#include "daScript/misc/platform.h"

#include "daScript/simulate/simulate.h"
#include "daScript/simulate/aot.h"
#include "daScript/simulate/aot_library.h"

 // require builtin
 // require rtti
#include "daScript/simulate/aot_builtin_rtti.h"
#include "daScript/ast/ast.h"
#include "daScript/ast/ast_handle.h"
 // require strings
#include "daScript/simulate/aot_builtin_string.h"
 // require ast
#include "daScript/ast/ast.h"
#include "daScript/simulate/aot_builtin_ast.h"
#include "daScript/ast/ast_generate.h"
 // require math
#include "daScript/simulate/aot_builtin_math.h"
 // require strings_boost
 // require ast_boost
 // require templates
 // require contracts
 // require array_boost
 // require algorithm
 // require templates_boost
 // require soa

#if defined(_MSC_VER)
#pragma warning(push)
#pragma warning(disable:4100)   // unreferenced formal parameter
#pragma warning(disable:4189)   // local variable is initialized but not referenced
#pragma warning(disable:4244)   // conversion from 'int32_t' to 'float', possible loss of data
#pragma warning(disable:4114)   // same qualifier more than once
#pragma warning(disable:4623)   // default constructor was implicitly defined as deleted
#pragma warning(disable:4946)   // reinterpret_cast used between related classes
#pragma warning(disable:4269)   // 'const' automatic data initialized with compiler generated default constructor produces unreliable results
#pragma warning(disable:4555)   // result of expression not used
#endif
#if defined(__EDG__)
#pragma diag_suppress 826
#elif defined(__GNUC__) && !defined(__clang__)
#pragma GCC diagnostic push
#pragma GCC diagnostic ignored "-Wunused-parameter"
#pragma GCC diagnostic ignored "-Wunused-variable"
#pragma GCC diagnostic ignored "-Wunused-function"
#pragma GCC diagnostic ignored "-Wwrite-strings"
#pragma GCC diagnostic ignored "-Wreturn-local-addr"
#pragma GCC diagnostic ignored "-Wignored-qualifiers"
#pragma GCC diagnostic ignored "-Wsign-compare"
#pragma GCC diagnostic ignored "-Wsubobject-linkage"
#endif
#if defined(__clang__)
#pragma clang diagnostic push
#pragma clang diagnostic ignored "-Wunused-parameter"
#pragma clang diagnostic ignored "-Wwritable-strings"
#pragma clang diagnostic ignored "-Wunused-variable"
#pragma clang diagnostic ignored "-Wunused-but-set-variable"
#pragma clang diagnostic ignored "-Wunsequenced"
#pragma clang diagnostic ignored "-Wunused-function"
#endif

namespace das {
namespace _anon_2012222979515622300 {

namespace soa { struct SOA_INDEX; };
namespace soa { struct SoaCallMacro; };
namespace soa { struct SoaStructMacro; };
namespace soa { struct CollectAndReplaceIteratorFields; };
namespace soa { struct SoaForLoop; };
namespace ast { struct AstFunctionAnnotation; };
namespace ast { struct AstBlockAnnotation; };
namespace ast { struct AstStructureAnnotation; };
namespace ast { struct AstPassMacro; };
namespace ast { struct AstVariantMacro; };
namespace ast { struct AstForLoopMacro; };
namespace ast { struct AstCaptureMacro; };
namespace ast { struct AstTypeMacro; };
namespace ast { struct AstSimulateMacro; };
namespace ast { struct AstReaderMacro; };
namespace ast { struct AstCommentReader; };
namespace ast { struct AstCallMacro; };
namespace ast { struct AstTypeInfoMacro; };
namespace ast { struct AstEnumerationAnnotation; };
namespace ast { struct AstVisitor; };
namespace ast_boost { struct MacroMacro; };
namespace ast_boost { struct TagFunctionAnnotation; };
namespace ast_boost { struct TagStructureAnnotation; };
namespace ast_boost { struct SetupAnyAnnotation; };
namespace ast_boost { struct SetupFunctionAnnotation; };
namespace ast_boost { struct SetupBlockAnnotation; };
namespace ast_boost { struct SetupStructureAnnotation; };
namespace ast_boost { struct SetupEnumerationAnnotation; };
namespace ast_boost { struct SetupContractAnnotation; };
namespace ast_boost { struct SetupReaderMacro; };
namespace ast_boost { struct SetupCommentReader; };
namespace ast_boost { struct SetupVariantMacro; };
namespace ast_boost { struct SetupForLoopMacro; };
namespace ast_boost { struct SetupCaptureMacro; };
namespace ast_boost { struct SetupTypeMacro; };
namespace ast_boost { struct SetupSimulateMacro; };
namespace ast_boost { struct SetupCallMacro; };
namespace ast_boost { struct SetupTypeInfoMacro; };
namespace ast_boost { struct SetupInferMacro; };
namespace ast_boost { struct SetupDirtyInferMacro; };
namespace ast_boost { struct SetupLintMacro; };
namespace ast_boost { struct SetupGlobalLintMacro; };
namespace ast_boost { struct SetupOptimizationMacro; };
namespace ast_boost { struct TagFunctionMacro; };
namespace ast_boost { struct BetterRttiVisitor; };
namespace templates { struct DecltypeMacro; };
namespace templates { struct DecltypeNoRefMacro; };
namespace templates { struct TemplateMacro; };
namespace contracts { struct IsAnyType; };
namespace contracts { struct IsAnyArrayMacro; };
namespace contracts { struct IsAnyEnumMacro; };
namespace contracts { struct IsAnyBitfieldMacro; };
namespace contracts { struct IsAnyVectorType; };
namespace contracts { struct IsAnyStructMacro; };
namespace contracts { struct IsAnyNumericMacro; };
namespace contracts { struct IsAnyWorkhorse; };
namespace contracts { struct IsAnyWorkhorseNonPtrMacro; };
namespace contracts { struct IsAnyTupleNonPtrMacro; };
namespace contracts { struct IsAnyVariantNonPtrMacro; };
namespace contracts { struct IsAnyFunctionNonPtrMacro; };
namespace contracts { struct IsAnyLambdaMacro; };
namespace contracts { struct IsRefMacro; };
namespace contracts { struct IsPointer; };
namespace contracts { struct IsClass; };
namespace contracts { struct IsValueHandle; };
namespace templates_boost { struct Template; };
namespace templates_boost { struct TemplateVisitor; };
namespace templates_boost { struct RemoveDerefVisitor; };
namespace templates_boost { struct QRulesVisitor; };
namespace templates_boost { struct AstQCallMacro; };
namespace templates_boost { struct QMacro; };
namespace templates_boost { struct QBlockMacro; };
namespace templates_boost { struct QBlockToArrayMacro; };
namespace templates_boost { struct QBlockExprMacro; };
namespace templates_boost { struct QTypeMacro; };
namespace templates_boost { struct AstQNamedMacro; };
namespace templates_boost { struct AstQFunctionMacro; };
namespace templates_boost { struct AstQVariableMacro; };
namespace templates_boost { struct AstQNamedClassMacro; };
namespace templates_boost { struct AstQMethodMacro; };
// unused enumeration CompilationError
// unused enumeration ConstMatters
// unused enumeration RefMatters
// unused enumeration TemporaryMatters
// unused enumeration Type
// unused enumeration ConversionResult
// unused enumeration CaptureMode
// unused enumeration SideEffects
namespace ast {

struct AstFunctionAnnotation {
    void * __rtti;
    Func DAS_COMMENT((void,ast::AstFunctionAnnotation)) __finalize;
    Func DAS_COMMENT((smart_ptr_raw<Expression>,ast::AstFunctionAnnotation,smart_ptr_raw<ExprCallFunc>,das::string)) transform;
    Func DAS_COMMENT((bool,ast::AstFunctionAnnotation,smart_ptr_raw<ExprCallFunc>,AnnotationArgumentList const ,AnnotationArgumentList const ,das::string)) verifyCall;
    Func DAS_COMMENT((bool,ast::AstFunctionAnnotation,smart_ptr_raw<Function>,ModuleGroup,AnnotationArgumentList const ,das::string)) apply;
    Func DAS_COMMENT((bool,ast::AstFunctionAnnotation,smart_ptr_raw<Function>,ModuleGroup,AnnotationArgumentList const ,das::string)) generic_apply;
    Func DAS_COMMENT((bool,ast::AstFunctionAnnotation,smart_ptr_raw<Function>,ModuleGroup,AnnotationArgumentList const ,AnnotationArgumentList const ,das::string)) finish;
    Func DAS_COMMENT((bool,ast::AstFunctionAnnotation,smart_ptr_raw<Function>,ModuleGroup,AnnotationArgumentList const ,AnnotationArgumentList const ,das::string,bool &)) patch;
    Func DAS_COMMENT((bool,ast::AstFunctionAnnotation,smart_ptr_raw<Function>,ModuleGroup,AnnotationArgumentList const ,AnnotationArgumentList const ,das::string)) fixup;
    Func DAS_COMMENT((bool,ast::AstFunctionAnnotation,smart_ptr_raw<Function>,ModuleGroup,AnnotationArgumentList const ,AnnotationArgumentList const ,das::string)) lint;
    Func DAS_COMMENT((void,ast::AstFunctionAnnotation,smart_ptr_raw<Function>,smart_ptr_raw<Context>)) complete;
    Func DAS_COMMENT((bool,ast::AstFunctionAnnotation,smart_ptr_raw<Function>,das::vector<smart_ptr<TypeDecl>>,AnnotationDeclaration const ,das::string)) isCompatible;
    Func DAS_COMMENT((bool,ast::AstFunctionAnnotation)) isSpecialized;
    Func DAS_COMMENT((void,ast::AstFunctionAnnotation,smart_ptr_raw<Function> const ,AnnotationDeclaration const ,das::string)) appendToMangledName;
};
}
// unused structure AstBlockAnnotation
namespace ast {

struct AstStructureAnnotation {
    void * __rtti;
    Func DAS_COMMENT((void,ast::AstStructureAnnotation)) __finalize;
    Func DAS_COMMENT((bool,ast::AstStructureAnnotation,smart_ptr_raw<Structure>,ModuleGroup,AnnotationArgumentList const ,das::string)) apply;
    Func DAS_COMMENT((bool,ast::AstStructureAnnotation,smart_ptr_raw<Structure>,ModuleGroup,AnnotationArgumentList const ,das::string)) finish;
    Func DAS_COMMENT((bool,ast::AstStructureAnnotation,smart_ptr_raw<Structure>,ModuleGroup,AnnotationArgumentList const ,das::string,bool &)) patch;
    Func DAS_COMMENT((void,ast::AstStructureAnnotation,smart_ptr_raw<Structure>,smart_ptr_raw<Context>)) complete;
    Func DAS_COMMENT((void,ast::AstStructureAnnotation,smart_ptr_raw<Structure>,AnnotationArgumentList const ,StringBuilderWriter)) aotPrefix;
    Func DAS_COMMENT((void,ast::AstStructureAnnotation,smart_ptr_raw<Structure>,AnnotationArgumentList const ,StringBuilderWriter)) aotBody;
    Func DAS_COMMENT((void,ast::AstStructureAnnotation,smart_ptr_raw<Structure>,AnnotationArgumentList const ,StringBuilderWriter)) aotSuffix;
};
}
// unused structure AstPassMacro
// unused structure AstVariantMacro
namespace ast {

struct AstForLoopMacro {
    void * __rtti;
    Func DAS_COMMENT((void,ast::AstForLoopMacro)) __finalize;
    Func DAS_COMMENT((smart_ptr_raw<Expression>,ast::AstForLoopMacro,smart_ptr_raw<Program> const ,Module * const ,smart_ptr_raw<ExprFor> const )) visitExprFor;
};
}
// unused structure AstCaptureMacro
// unused structure AstTypeMacro
// unused structure AstSimulateMacro
// unused structure AstReaderMacro
// unused structure AstCommentReader
// unused structure AstCallMacro
// unused structure AstTypeInfoMacro
// unused structure AstEnumerationAnnotation
namespace ast {

struct AstVisitor {
    void * __rtti;
    Func DAS_COMMENT((void,ast::AstVisitor)) __finalize;
    Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<Program> const )) preVisitProgram;
    Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<Program> const )) visitProgram;
    Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<Program> const ,Module * const )) preVisitProgramBody;
    Func DAS_COMMENT((void,ast::AstVisitor,Module * const )) preVisitModule;
    Func DAS_COMMENT((void,ast::AstVisitor,Module * const )) visitModule;
    Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<ExprTypeDecl> const )) preVisitExprTypeDecl;
    Func DAS_COMMENT((smart_ptr_raw<Expression>,ast::AstVisitor,smart_ptr_raw<ExprTypeDecl> const )) visitExprTypeDecl;
    Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<TypeDecl> const )) preVisitTypeDecl;
    Func DAS_COMMENT((smart_ptr_raw<TypeDecl>,ast::AstVisitor,smart_ptr_raw<TypeDecl> const )) visitTypeDecl;
    Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<TypeDecl> const ,das::string const )) preVisitAlias;
    Func DAS_COMMENT((smart_ptr_raw<TypeDecl>,ast::AstVisitor,smart_ptr_raw<TypeDecl> const ,das::string const )) visitAlias;
    Func DAS_COMMENT((bool,ast::AstVisitor,Enumeration * const )) canVisitEnumeration;
    Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<Enumeration> const )) preVisitEnumeration;
    Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<Enumeration> const ,das::string const ,smart_ptr_raw<Expression> const ,bool)) preVisitEnumerationValue;
    Func DAS_COMMENT((smart_ptr_raw<Expression>,ast::AstVisitor,smart_ptr_raw<Enumeration> const ,das::string const ,smart_ptr_raw<Expression> const ,bool)) visitEnumerationValue;
    Func DAS_COMMENT((smart_ptr_raw<Enumeration>,ast::AstVisitor,smart_ptr_raw<Enumeration> const )) visitEnumeration;
    Func DAS_COMMENT((bool,ast::AstVisitor,Structure * const )) canVisitStructure;
    Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<Structure> const )) preVisitStructure;
    Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<Structure> const ,Structure::FieldDeclaration const ,bool)) preVisitStructureField;
    Func DAS_COMMENT((bool,ast::AstVisitor,smart_ptr_raw<Structure> const )) canVisitStructureFieldInit;
    Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<Structure> const ,Structure::FieldDeclaration const ,bool)) visitStructureField;
    Func DAS_COMMENT((smart_ptr_raw<Structure>,ast::AstVisitor,smart_ptr_raw<Structure> const )) visitStructure;
    Func DAS_COMMENT((bool,ast::AstVisitor,Function * const )) canVisitFunction;
    Func DAS_COMMENT((bool,ast::AstVisitor,Function * const ,smart_ptr_raw<Variable> const ,smart_ptr_raw<Expression> const )) canVisitFunctionArgumentInit;
    Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<Function> const )) preVisitFunction;
    Func DAS_COMMENT((smart_ptr_raw<Function>,ast::AstVisitor,smart_ptr_raw<Function> const )) visitFunction;
    Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<Function> const ,smart_ptr_raw<Variable> const ,bool)) preVisitFunctionArgument;
    Func DAS_COMMENT((smart_ptr_raw<Variable>,ast::AstVisitor,smart_ptr_raw<Function> const ,smart_ptr_raw<Variable> const ,bool)) visitFunctionArgument;
    Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<Function> const ,smart_ptr_raw<Variable> const ,smart_ptr_raw<Expression> const )) preVisitFunctionArgumentInit;
    Func DAS_COMMENT((smart_ptr_raw<Expression>,ast::AstVisitor,smart_ptr_raw<Function> const ,smart_ptr_raw<Variable> const ,smart_ptr_raw<Expression> const )) visitFunctionArgumentInit;
    Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<Function> const ,smart_ptr_raw<Expression> const )) preVisitFunctionBody;
    Func DAS_COMMENT((smart_ptr_raw<Expression>,ast::AstVisitor,smart_ptr_raw<Function> const ,smart_ptr_raw<Expression> const )) visitFunctionBody;
    Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<Expression> const )) preVisitExpression;
    Func DAS_COMMENT((smart_ptr_raw<Expression>,ast::AstVisitor,smart_ptr_raw<Expression> const )) visitExpression;
    Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<ExprBlock> const )) preVisitExprBlock;
    Func DAS_COMMENT((smart_ptr_raw<Expression>,ast::AstVisitor,smart_ptr_raw<ExprBlock> const )) visitExprBlock;
    Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<ExprBlock> const ,smart_ptr_raw<Variable> const ,bool)) preVisitExprBlockArgument;
    Func DAS_COMMENT((smart_ptr_raw<Variable>,ast::AstVisitor,smart_ptr_raw<ExprBlock> const ,smart_ptr_raw<Variable> const ,bool)) visitExprBlockArgument;
    Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<ExprBlock> const ,smart_ptr_raw<Variable> const ,smart_ptr_raw<Expression> const )) preVisitExprBlockArgumentInit;
    Func DAS_COMMENT((smart_ptr_raw<Expression>,ast::AstVisitor,smart_ptr_raw<ExprBlock> const ,smart_ptr_raw<Variable> const ,smart_ptr_raw<Expression> const )) visitExprBlockArgumentInit;
    Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<ExprBlock> const ,smart_ptr_raw<Expression> const )) preVisitExprBlockExpression;
    Func DAS_COMMENT((smart_ptr_raw<Expression>,ast::AstVisitor,smart_ptr_raw<ExprBlock> const ,smart_ptr_raw<Expression> const )) visitExprBlockExpression;
    Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<ExprBlock> const )) preVisitExprBlockFinal;
    Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<ExprBlock> const )) visitExprBlockFinal;
    Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<ExprBlock> const ,smart_ptr_raw<Expression> const )) preVisitExprBlockFinalExpression;
    Func DAS_COMMENT((smart_ptr_raw<Expression>,ast::AstVisitor,smart_ptr_raw<ExprBlock> const ,smart_ptr_raw<Expression> const )) visitExprBlockFinalExpression;
    Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<ExprLet> const )) preVisitExprLet;
    Func DAS_COMMENT((smart_ptr_raw<Expression>,ast::AstVisitor,smart_ptr_raw<ExprLet> const )) visitExprLet;
    Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<ExprLet> const ,smart_ptr_raw<Variable> const ,bool)) preVisitExprLetVariable;
    Func DAS_COMMENT((smart_ptr_raw<Variable>,ast::AstVisitor,smart_ptr_raw<ExprLet> const ,smart_ptr_raw<Variable> const ,bool)) visitExprLetVariable;
    Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<ExprLet> const ,smart_ptr_raw<Variable> const ,smart_ptr_raw<Expression> const )) preVisitExprLetVariableInit;
    Func DAS_COMMENT((smart_ptr_raw<Expression>,ast::AstVisitor,smart_ptr_raw<ExprLet> const ,smart_ptr_raw<Variable> const ,smart_ptr_raw<Expression> const )) visitExprLetVariableInit;
    Func DAS_COMMENT((bool,ast::AstVisitor,Variable * const )) canVisitGlobalVariable;
    Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<Program> const )) preVisitGlobalLet;
    Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<Program> const )) visitGlobalLet;
    Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<Variable> const ,bool)) preVisitGlobalLetVariable;
    Func DAS_COMMENT((smart_ptr_raw<Variable>,ast::AstVisitor,smart_ptr_raw<Variable> const ,bool)) visitGlobalLetVariable;
    Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<Variable> const ,smart_ptr_raw<Expression> const )) preVisitGlobalLetVariableInit;
    Func DAS_COMMENT((smart_ptr_raw<Expression>,ast::AstVisitor,smart_ptr_raw<Variable> const ,smart_ptr_raw<Expression> const )) visitGlobalLetVariableInit;
    Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<ExprStringBuilder> const )) preVisitExprStringBuilder;
    Func DAS_COMMENT((smart_ptr_raw<Expression>,ast::AstVisitor,smart_ptr_raw<ExprStringBuilder> const )) visitExprStringBuilder;
    Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<ExprStringBuilder> const ,smart_ptr_raw<Expression> const ,bool)) preVisitExprStringBuilderElement;
    Func DAS_COMMENT((smart_ptr_raw<Expression>,ast::AstVisitor,smart_ptr_raw<ExprStringBuilder> const ,smart_ptr_raw<Expression> const ,bool)) visitExprStringBuilderElement;
    Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<ExprNew> const )) preVisitExprNew;
    Func DAS_COMMENT((smart_ptr_raw<Expression>,ast::AstVisitor,smart_ptr_raw<ExprNew> const )) visitExprNew;
    Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<ExprNew> const ,smart_ptr_raw<Expression> const ,bool)) preVisitExprNewArgument;
    Func DAS_COMMENT((smart_ptr_raw<Expression>,ast::AstVisitor,smart_ptr_raw<ExprNew> const ,smart_ptr_raw<Expression> const ,bool)) visitExprNewArgument;
    Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<ExprNamedCall> const )) preVisitExprNamedCall;
    Func DAS_COMMENT((smart_ptr_raw<Expression>,ast::AstVisitor,smart_ptr_raw<ExprNamedCall> const )) visitExprNamedCall;
    Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<ExprNamedCall> const ,smart_ptr_raw<MakeFieldDecl> const ,bool)) preVisitExprNamedCallArgument;
    Func DAS_COMMENT((smart_ptr_raw<MakeFieldDecl>,ast::AstVisitor,smart_ptr_raw<ExprNamedCall> const ,smart_ptr_raw<MakeFieldDecl> const ,bool)) visitExprNamedCallArgument;
    Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<ExprLooksLikeCall> const )) preVisitExprLooksLikeCall;
    Func DAS_COMMENT((smart_ptr_raw<Expression>,ast::AstVisitor,smart_ptr_raw<ExprLooksLikeCall> const )) visitExprLooksLikeCall;
    Func DAS_COMMENT((bool,ast::AstVisitor,smart_ptr_raw<ExprLooksLikeCall> const ,smart_ptr_raw<Expression> const ,bool)) canVisitExprLooksLikeCallArgument;
    Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<ExprLooksLikeCall> const ,smart_ptr_raw<Expression> const ,bool)) preVisitExprLooksLikeCallArgument;
    Func DAS_COMMENT((smart_ptr_raw<Expression>,ast::AstVisitor,smart_ptr_raw<ExprLooksLikeCall> const ,smart_ptr_raw<Expression> const ,bool)) visitExprLooksLikeCallArgument;
    Func DAS_COMMENT((bool,ast::AstVisitor,ExprCall * const )) canVisitCall;
    Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<ExprCall> const )) preVisitExprCall;
    Func DAS_COMMENT((smart_ptr_raw<Expression>,ast::AstVisitor,smart_ptr_raw<ExprCall> const )) visitExprCall;
    Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<ExprCall> const ,smart_ptr_raw<Expression> const ,bool)) preVisitExprCallArgument;
    Func DAS_COMMENT((smart_ptr_raw<Expression>,ast::AstVisitor,smart_ptr_raw<ExprCall> const ,smart_ptr_raw<Expression> const ,bool)) visitExprCallArgument;
    Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<ExprNullCoalescing> const )) preVisitExprNullCoalescing;
    Func DAS_COMMENT((smart_ptr_raw<Expression>,ast::AstVisitor,smart_ptr_raw<ExprNullCoalescing> const )) visitExprNullCoalescing;
    Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<ExprNullCoalescing> const ,smart_ptr_raw<Expression> const )) preVisitExprNullCoalescingDefault;
    Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<ExprAt> const )) preVisitExprAt;
    Func DAS_COMMENT((smart_ptr_raw<Expression>,ast::AstVisitor,smart_ptr_raw<ExprAt> const )) visitExprAt;
    Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<ExprAt> const ,smart_ptr_raw<Expression> const )) preVisitExprAtIndex;
    Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<ExprSafeAt> const )) preVisitExprSafeAt;
    Func DAS_COMMENT((smart_ptr_raw<Expression>,ast::AstVisitor,smart_ptr_raw<ExprSafeAt> const )) visitExprSafeAt;
    Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<ExprSafeAt> const ,smart_ptr_raw<Expression> const )) preVisitExprSafeAtIndex;
    Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<ExprIs> const )) preVisitExprIs;
    Func DAS_COMMENT((smart_ptr_raw<Expression>,ast::AstVisitor,smart_ptr_raw<ExprIs> const )) visitExprIs;
    Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<ExprIs> const ,smart_ptr_raw<TypeDecl> const )) preVisitExprIsType;
    Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<ExprOp2> const )) preVisitExprOp2;
    Func DAS_COMMENT((smart_ptr_raw<Expression>,ast::AstVisitor,smart_ptr_raw<ExprOp2> const )) visitExprOp2;
    Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<ExprOp2> const ,smart_ptr_raw<Expression> const )) preVisitExprOp2Right;
    Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<ExprOp3> const )) preVisitExprOp3;
    Func DAS_COMMENT((smart_ptr_raw<Expression>,ast::AstVisitor,smart_ptr_raw<ExprOp3> const )) visitExprOp3;
    Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<ExprOp3> const ,smart_ptr_raw<Expression> const )) preVisitExprOp3Left;
    Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<ExprOp3> const ,smart_ptr_raw<Expression> const )) preVisitExprOp3Right;
    Func DAS_COMMENT((bool,ast::AstVisitor,smart_ptr_raw<ExprCopy> const )) isRightFirstExprCopy;
    Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<ExprCopy> const )) preVisitExprCopy;
    Func DAS_COMMENT((smart_ptr_raw<Expression>,ast::AstVisitor,smart_ptr_raw<ExprCopy> const )) visitExprCopy;
    Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<ExprCopy> const ,smart_ptr_raw<Expression> const )) preVisitExprCopyRight;
    Func DAS_COMMENT((bool,ast::AstVisitor,smart_ptr_raw<ExprMove> const )) isRightFirstExprMove;
    Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<ExprMove> const )) preVisitExprMove;
    Func DAS_COMMENT((smart_ptr_raw<Expression>,ast::AstVisitor,smart_ptr_raw<ExprMove> const )) visitExprMove;
    Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<ExprMove> const ,smart_ptr_raw<Expression> const )) preVisitExprMoveRight;
    Func DAS_COMMENT((bool,ast::AstVisitor,smart_ptr_raw<ExprClone> const )) isRightFirstExprClone;
    Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<ExprClone> const )) preVisitExprClone;
    Func DAS_COMMENT((smart_ptr_raw<Expression>,ast::AstVisitor,smart_ptr_raw<ExprClone> const )) visitExprClone;
    Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<ExprClone> const ,smart_ptr_raw<Expression> const )) preVisitExprCloneRight;
    Func DAS_COMMENT((bool,ast::AstVisitor,smart_ptr_raw<ExprAssume> const )) canVisitWithAliasSubexpression;
    Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<ExprAssume> const )) preVisitExprAssume;
    Func DAS_COMMENT((smart_ptr_raw<Expression>,ast::AstVisitor,smart_ptr_raw<ExprAssume> const )) visitExprAssume;
    Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<ExprWith> const )) preVisitExprWith;
    Func DAS_COMMENT((smart_ptr_raw<Expression>,ast::AstVisitor,smart_ptr_raw<ExprWith> const )) visitExprWith;
    Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<ExprWith> const ,smart_ptr_raw<Expression> const )) preVisitExprWithBody;
    Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<ExprWhile> const )) preVisitExprWhile;
    Func DAS_COMMENT((smart_ptr_raw<Expression>,ast::AstVisitor,smart_ptr_raw<ExprWhile> const )) visitExprWhile;
    Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<ExprWhile> const ,smart_ptr_raw<Expression> const )) preVisitExprWhileBody;
    Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<ExprTryCatch> const )) preVisitExprTryCatch;
    Func DAS_COMMENT((smart_ptr_raw<Expression>,ast::AstVisitor,smart_ptr_raw<ExprTryCatch> const )) visitExprTryCatch;
    Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<ExprTryCatch> const ,smart_ptr_raw<Expression> const )) preVisitExprTryCatchCatch;
    Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<ExprIfThenElse> const )) preVisitExprIfThenElse;
    Func DAS_COMMENT((smart_ptr_raw<Expression>,ast::AstVisitor,smart_ptr_raw<ExprIfThenElse> const )) visitExprIfThenElse;
    Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<ExprIfThenElse> const ,smart_ptr_raw<Expression> const )) preVisitExprIfThenElseIfBlock;
    Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<ExprIfThenElse> const ,smart_ptr_raw<Expression> const )) preVisitExprIfThenElseElseBlock;
    Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<ExprFor> const )) preVisitExprFor;
    Func DAS_COMMENT((smart_ptr_raw<Expression>,ast::AstVisitor,smart_ptr_raw<ExprFor> const )) visitExprFor;
    Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<ExprFor> const ,smart_ptr_raw<Variable> const ,bool)) preVisitExprForVariable;
    Func DAS_COMMENT((smart_ptr_raw<Variable>,ast::AstVisitor,smart_ptr_raw<ExprFor> const ,smart_ptr_raw<Variable> const ,bool)) visitExprForVariable;
    Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<ExprFor> const ,smart_ptr_raw<Expression> const ,bool)) preVisitExprForSource;
    Func DAS_COMMENT((smart_ptr_raw<Expression>,ast::AstVisitor,smart_ptr_raw<ExprFor> const ,smart_ptr_raw<Expression> const ,bool)) visitExprForSource;
    Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<ExprFor> const )) preVisitExprForStack;
    Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<ExprFor> const )) preVisitExprForBody;
    Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<ExprMakeVariant> const )) preVisitExprMakeVariant;
    Func DAS_COMMENT((smart_ptr_raw<Expression>,ast::AstVisitor,smart_ptr_raw<ExprMakeVariant> const )) visitExprMakeVariant;
    Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<ExprMakeVariant> const ,int32_t,smart_ptr_raw<MakeFieldDecl> const ,bool)) preVisitExprMakeVariantField;
    Func DAS_COMMENT((smart_ptr_raw<MakeFieldDecl>,ast::AstVisitor,smart_ptr_raw<ExprMakeVariant> const ,int32_t,smart_ptr_raw<MakeFieldDecl> const ,bool)) visitExprMakeVariantField;
    Func DAS_COMMENT((bool,ast::AstVisitor,smart_ptr_raw<ExprMakeStruct> const )) canVisitExprMakeStructBody;
    Func DAS_COMMENT((bool,ast::AstVisitor,smart_ptr_raw<ExprMakeStruct> const ,smart_ptr_raw<Expression> const )) canVisitExprMakeStructBlock;
    Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<ExprMakeStruct> const )) preVisitExprMakeStruct;
    Func DAS_COMMENT((smart_ptr_raw<Expression>,ast::AstVisitor,smart_ptr_raw<ExprMakeStruct> const )) visitExprMakeStruct;
    Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<ExprMakeStruct> const ,int32_t,bool)) preVisitExprMakeStructIndex;
    Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<ExprMakeStruct> const ,int32_t,bool)) visitExprMakeStructIndex;
    Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<ExprMakeStruct> const ,int32_t,smart_ptr_raw<MakeFieldDecl> const ,bool)) preVisitExprMakeStructField;
    Func DAS_COMMENT((smart_ptr_raw<MakeFieldDecl>,ast::AstVisitor,smart_ptr_raw<ExprMakeStruct> const ,int32_t,smart_ptr_raw<MakeFieldDecl> const ,bool)) visitExprMakeStructField;
    Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<ExprMakeStruct> const ,smart_ptr_raw<Expression> const )) preVisitMakeStructureBlock;
    Func DAS_COMMENT((smart_ptr_raw<Expression>,ast::AstVisitor,smart_ptr_raw<ExprMakeStruct> const ,smart_ptr_raw<Expression> const )) visitMakeStructureBlock;
    Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<ExprMakeArray> const )) preVisitExprMakeArray;
    Func DAS_COMMENT((smart_ptr_raw<Expression>,ast::AstVisitor,smart_ptr_raw<ExprMakeArray> const )) visitExprMakeArray;
    Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<ExprMakeArray> const ,int32_t,smart_ptr_raw<Expression> const ,bool)) preVisitExprMakeArrayIndex;
    Func DAS_COMMENT((smart_ptr_raw<Expression>,ast::AstVisitor,smart_ptr_raw<ExprMakeArray> const ,int32_t,smart_ptr_raw<Expression> const ,bool)) visitExprMakeArrayIndex;
    Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<ExprMakeTuple> const )) preVisitExprMakeTuple;
    Func DAS_COMMENT((smart_ptr_raw<Expression>,ast::AstVisitor,smart_ptr_raw<ExprMakeTuple> const )) visitExprMakeTuple;
    Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<ExprMakeTuple> const ,int32_t,smart_ptr_raw<Expression> const ,bool)) preVisitExprMakeTupleIndex;
    Func DAS_COMMENT((smart_ptr_raw<Expression>,ast::AstVisitor,smart_ptr_raw<ExprMakeTuple> const ,int32_t,smart_ptr_raw<Expression> const ,bool)) visitExprMakeTupleIndex;
    Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<ExprArrayComprehension> const )) preVisitExprArrayComprehension;
    Func DAS_COMMENT((smart_ptr_raw<Expression>,ast::AstVisitor,smart_ptr_raw<ExprArrayComprehension> const )) visitExprArrayComprehension;
    Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<ExprArrayComprehension> const ,smart_ptr_raw<Expression> const )) preVisitExprArrayComprehensionSubexpr;
    Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<ExprArrayComprehension> const ,smart_ptr_raw<Expression> const )) preVisitExprArrayComprehensionWhere;
    Func DAS_COMMENT((bool,ast::AstVisitor,smart_ptr_raw<ExprTypeInfo> const ,smart_ptr_raw<Expression> const )) canVisitExprTypeInfo;
    Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<ExprTypeInfo> const )) preVisitExprTypeInfo;
    Func DAS_COMMENT((smart_ptr_raw<Expression>,ast::AstVisitor,smart_ptr_raw<ExprTypeInfo> const )) visitExprTypeInfo;
    Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<ExprPtr2Ref> const )) preVisitExprPtr2Ref;
    Func DAS_COMMENT((smart_ptr_raw<Expression>,ast::AstVisitor,smart_ptr_raw<ExprPtr2Ref> const )) visitExprPtr2Ref;
    Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<ExprLabel> const )) preVisitExprLabel;
    Func DAS_COMMENT((smart_ptr_raw<Expression>,ast::AstVisitor,smart_ptr_raw<ExprLabel> const )) visitExprLabel;
    Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<ExprGoto> const )) preVisitExprGoto;
    Func DAS_COMMENT((smart_ptr_raw<Expression>,ast::AstVisitor,smart_ptr_raw<ExprGoto> const )) visitExprGoto;
    Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<ExprRef2Value> const )) preVisitExprRef2Value;
    Func DAS_COMMENT((smart_ptr_raw<Expression>,ast::AstVisitor,smart_ptr_raw<ExprRef2Value> const )) visitExprRef2Value;
    Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<ExprRef2Ptr> const )) preVisitExprRef2Ptr;
    Func DAS_COMMENT((smart_ptr_raw<Expression>,ast::AstVisitor,smart_ptr_raw<ExprRef2Ptr> const )) visitExprRef2Ptr;
    Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<ExprAddr> const )) preVisitExprAddr;
    Func DAS_COMMENT((smart_ptr_raw<Expression>,ast::AstVisitor,smart_ptr_raw<ExprAddr> const )) visitExprAddr;
    Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<ExprAssert> const )) preVisitExprAssert;
    Func DAS_COMMENT((smart_ptr_raw<Expression>,ast::AstVisitor,smart_ptr_raw<ExprAssert> const )) visitExprAssert;
    Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<ExprStaticAssert> const )) preVisitExprStaticAssert;
    Func DAS_COMMENT((smart_ptr_raw<Expression>,ast::AstVisitor,smart_ptr_raw<ExprStaticAssert> const )) visitExprStaticAssert;
    Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<ExprQuote> const )) preVisitExprQuote;
    Func DAS_COMMENT((smart_ptr_raw<Expression>,ast::AstVisitor,smart_ptr_raw<ExprQuote> const )) visitExprQuote;
    Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<ExprDebug> const )) preVisitExprDebug;
    Func DAS_COMMENT((smart_ptr_raw<Expression>,ast::AstVisitor,smart_ptr_raw<ExprDebug> const )) visitExprDebug;
    Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<ExprInvoke> const )) preVisitExprInvoke;
    Func DAS_COMMENT((smart_ptr_raw<Expression>,ast::AstVisitor,smart_ptr_raw<ExprInvoke> const )) visitExprInvoke;
    Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<ExprErase> const )) preVisitExprErase;
    Func DAS_COMMENT((smart_ptr_raw<Expression>,ast::AstVisitor,smart_ptr_raw<ExprErase> const )) visitExprErase;
    Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<ExprSetInsert> const )) preVisitExprSetInsert;
    Func DAS_COMMENT((smart_ptr_raw<Expression>,ast::AstVisitor,smart_ptr_raw<ExprSetInsert> const )) visitExprSetInsert;
    Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<ExprFind> const )) preVisitExprFind;
    Func DAS_COMMENT((smart_ptr_raw<Expression>,ast::AstVisitor,smart_ptr_raw<ExprFind> const )) visitExprFind;
    Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<ExprKeyExists> const )) preVisitExprKeyExists;
    Func DAS_COMMENT((smart_ptr_raw<Expression>,ast::AstVisitor,smart_ptr_raw<ExprKeyExists> const )) visitExprKeyExists;
    Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<ExprAscend> const )) preVisitExprAscend;
    Func DAS_COMMENT((smart_ptr_raw<Expression>,ast::AstVisitor,smart_ptr_raw<ExprAscend> const )) visitExprAscend;
    Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<ExprCast> const )) preVisitExprCast;
    Func DAS_COMMENT((smart_ptr_raw<Expression>,ast::AstVisitor,smart_ptr_raw<ExprCast> const )) visitExprCast;
    Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<ExprDelete> const ,smart_ptr_raw<Expression> const )) preVisitExprDeleteSizeExpression;
    Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<ExprDelete> const )) preVisitExprDelete;
    Func DAS_COMMENT((smart_ptr_raw<Expression>,ast::AstVisitor,smart_ptr_raw<ExprDelete> const )) visitExprDelete;
    Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<ExprVar> const )) preVisitExprVar;
    Func DAS_COMMENT((smart_ptr_raw<Expression>,ast::AstVisitor,smart_ptr_raw<ExprVar> const )) visitExprVar;
    Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<ExprTag> const )) preVisitExprTag;
    Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<ExprTag> const ,smart_ptr_raw<Expression> const )) preVisitExprTagValue;
    Func DAS_COMMENT((smart_ptr_raw<Expression>,ast::AstVisitor,smart_ptr_raw<ExprTag> const )) visitExprTag;
    Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<ExprField> const )) preVisitExprField;
    Func DAS_COMMENT((smart_ptr_raw<Expression>,ast::AstVisitor,smart_ptr_raw<ExprField> const )) visitExprField;
    Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<ExprSafeField> const )) preVisitExprSafeField;
    Func DAS_COMMENT((smart_ptr_raw<Expression>,ast::AstVisitor,smart_ptr_raw<ExprSafeField> const )) visitExprSafeField;
    Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<ExprSwizzle> const )) preVisitExprSwizzle;
    Func DAS_COMMENT((smart_ptr_raw<Expression>,ast::AstVisitor,smart_ptr_raw<ExprSwizzle> const )) visitExprSwizzle;
    Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<ExprIsVariant> const )) preVisitExprIsVariant;
    Func DAS_COMMENT((smart_ptr_raw<Expression>,ast::AstVisitor,smart_ptr_raw<ExprIsVariant> const )) visitExprIsVariant;
    Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<ExprAsVariant> const )) preVisitExprAsVariant;
    Func DAS_COMMENT((smart_ptr_raw<Expression>,ast::AstVisitor,smart_ptr_raw<ExprAsVariant> const )) visitExprAsVariant;
    Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<ExprSafeAsVariant> const )) preVisitExprSafeAsVariant;
    Func DAS_COMMENT((smart_ptr_raw<Expression>,ast::AstVisitor,smart_ptr_raw<ExprSafeAsVariant> const )) visitExprSafeAsVariant;
    Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<ExprOp1> const )) preVisitExprOp1;
    Func DAS_COMMENT((smart_ptr_raw<Expression>,ast::AstVisitor,smart_ptr_raw<ExprOp1> const )) visitExprOp1;
    Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<ExprReturn> const )) preVisitExprReturn;
    Func DAS_COMMENT((smart_ptr_raw<Expression>,ast::AstVisitor,smart_ptr_raw<ExprReturn> const )) visitExprReturn;
    Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<ExprYield> const )) preVisitExprYield;
    Func DAS_COMMENT((smart_ptr_raw<Expression>,ast::AstVisitor,smart_ptr_raw<ExprYield> const )) visitExprYield;
    Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<ExprBreak> const )) preVisitExprBreak;
    Func DAS_COMMENT((smart_ptr_raw<Expression>,ast::AstVisitor,smart_ptr_raw<ExprBreak> const )) visitExprBreak;
    Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<ExprContinue> const )) preVisitExprContinue;
    Func DAS_COMMENT((smart_ptr_raw<Expression>,ast::AstVisitor,smart_ptr_raw<ExprContinue> const )) visitExprContinue;
    Func DAS_COMMENT((bool,ast::AstVisitor,smart_ptr_raw<ExprMakeBlock> const )) canVisitMakeBlockBody;
    Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<ExprMakeBlock> const )) preVisitExprMakeBlock;
    Func DAS_COMMENT((smart_ptr_raw<Expression>,ast::AstVisitor,smart_ptr_raw<ExprMakeBlock> const )) visitExprMakeBlock;
    Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<ExprMakeGenerator> const )) preVisitExprMakeGenerator;
    Func DAS_COMMENT((smart_ptr_raw<Expression>,ast::AstVisitor,smart_ptr_raw<ExprMakeGenerator> const )) visitExprMakeGenerator;
    Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<ExprMemZero> const )) preVisitExprMemZero;
    Func DAS_COMMENT((smart_ptr_raw<Expression>,ast::AstVisitor,smart_ptr_raw<ExprMemZero> const )) visitExprMemZero;
    Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<ExprConst> const )) preVisitExprConst;
    Func DAS_COMMENT((smart_ptr_raw<Expression>,ast::AstVisitor,smart_ptr_raw<ExprConst> const )) visitExprConst;
    Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<ExprConstPtr> const )) preVisitExprConstPtr;
    Func DAS_COMMENT((smart_ptr_raw<Expression>,ast::AstVisitor,smart_ptr_raw<ExprConstPtr> const )) visitExprConstPtr;
    Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<ExprConstEnumeration> const )) preVisitExprConstEnumeration;
    Func DAS_COMMENT((smart_ptr_raw<Expression>,ast::AstVisitor,smart_ptr_raw<ExprConstEnumeration> const )) visitExprConstEnumeration;
    Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<ExprConstBitfield> const )) preVisitExprConstBitfield;
    Func DAS_COMMENT((smart_ptr_raw<Expression>,ast::AstVisitor,smart_ptr_raw<ExprConstBitfield> const )) visitExprConstBitfield;
    Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<ExprConstInt8> const )) preVisitExprConstInt8;
    Func DAS_COMMENT((smart_ptr_raw<Expression>,ast::AstVisitor,smart_ptr_raw<ExprConstInt8> const )) visitExprConstInt8;
    Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<ExprConstInt16> const )) preVisitExprConstInt16;
    Func DAS_COMMENT((smart_ptr_raw<Expression>,ast::AstVisitor,smart_ptr_raw<ExprConstInt16> const )) visitExprConstInt16;
    Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<ExprConstInt64> const )) preVisitExprConstInt64;
    Func DAS_COMMENT((smart_ptr_raw<Expression>,ast::AstVisitor,smart_ptr_raw<ExprConstInt64> const )) visitExprConstInt64;
    Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<ExprConstInt> const )) preVisitExprConstInt;
    Func DAS_COMMENT((smart_ptr_raw<Expression>,ast::AstVisitor,smart_ptr_raw<ExprConstInt> const )) visitExprConstInt;
    Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<ExprConstInt2> const )) preVisitExprConstInt2;
    Func DAS_COMMENT((smart_ptr_raw<Expression>,ast::AstVisitor,smart_ptr_raw<ExprConstInt2> const )) visitExprConstInt2;
    Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<ExprConstInt3> const )) preVisitExprConstInt3;
    Func DAS_COMMENT((smart_ptr_raw<Expression>,ast::AstVisitor,smart_ptr_raw<ExprConstInt3> const )) visitExprConstInt3;
    Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<ExprConstInt4> const )) preVisitExprConstInt4;
    Func DAS_COMMENT((smart_ptr_raw<Expression>,ast::AstVisitor,smart_ptr_raw<ExprConstInt4> const )) visitExprConstInt4;
    Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<ExprConstUInt8> const )) preVisitExprConstUInt8;
    Func DAS_COMMENT((smart_ptr_raw<Expression>,ast::AstVisitor,smart_ptr_raw<ExprConstUInt8> const )) visitExprConstUInt8;
    Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<ExprConstUInt16> const )) preVisitExprConstUInt16;
    Func DAS_COMMENT((smart_ptr_raw<Expression>,ast::AstVisitor,smart_ptr_raw<ExprConstUInt16> const )) visitExprConstUInt16;
    Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<ExprConstUInt64> const )) preVisitExprConstUInt64;
    Func DAS_COMMENT((smart_ptr_raw<Expression>,ast::AstVisitor,smart_ptr_raw<ExprConstUInt64> const )) visitExprConstUInt64;
    Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<ExprConstUInt> const )) preVisitExprConstUInt;
    Func DAS_COMMENT((smart_ptr_raw<Expression>,ast::AstVisitor,smart_ptr_raw<ExprConstUInt> const )) visitExprConstUInt;
    Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<ExprConstUInt2> const )) preVisitExprConstUInt2;
    Func DAS_COMMENT((smart_ptr_raw<Expression>,ast::AstVisitor,smart_ptr_raw<ExprConstUInt2> const )) visitExprConstUInt2;
    Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<ExprConstUInt3> const )) preVisitExprConstUInt3;
    Func DAS_COMMENT((smart_ptr_raw<Expression>,ast::AstVisitor,smart_ptr_raw<ExprConstUInt3> const )) visitExprConstUInt3;
    Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<ExprConstUInt4> const )) preVisitExprConstUInt4;
    Func DAS_COMMENT((smart_ptr_raw<Expression>,ast::AstVisitor,smart_ptr_raw<ExprConstUInt4> const )) visitExprConstUInt4;
    Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<ExprConstRange> const )) preVisitExprConstRange;
    Func DAS_COMMENT((smart_ptr_raw<Expression>,ast::AstVisitor,smart_ptr_raw<ExprConstRange> const )) visitExprConstRange;
    Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<ExprConstURange> const )) preVisitExprConstURange;
    Func DAS_COMMENT((smart_ptr_raw<Expression>,ast::AstVisitor,smart_ptr_raw<ExprConstURange> const )) visitExprConstURange;
    Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<ExprConstRange64> const )) preVisitExprConstRange64;
    Func DAS_COMMENT((smart_ptr_raw<Expression>,ast::AstVisitor,smart_ptr_raw<ExprConstRange64> const )) visitExprConstRange64;
    Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<ExprConstURange64> const )) preVisitExprConstURange64;
    Func DAS_COMMENT((smart_ptr_raw<Expression>,ast::AstVisitor,smart_ptr_raw<ExprConstURange64> const )) visitExprConstURange64;
    Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<ExprConstBool> const )) preVisitExprConstBool;
    Func DAS_COMMENT((smart_ptr_raw<Expression>,ast::AstVisitor,smart_ptr_raw<ExprConstBool> const )) visitExprConstBool;
    Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<ExprConstFloat> const )) preVisitExprConstFloat;
    Func DAS_COMMENT((smart_ptr_raw<Expression>,ast::AstVisitor,smart_ptr_raw<ExprConstFloat> const )) visitExprConstFloat;
    Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<ExprConstFloat2> const )) preVisitExprConstFloat2;
    Func DAS_COMMENT((smart_ptr_raw<Expression>,ast::AstVisitor,smart_ptr_raw<ExprConstFloat2> const )) visitExprConstFloat2;
    Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<ExprConstFloat3> const )) preVisitExprConstFloat3;
    Func DAS_COMMENT((smart_ptr_raw<Expression>,ast::AstVisitor,smart_ptr_raw<ExprConstFloat3> const )) visitExprConstFloat3;
    Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<ExprConstFloat4> const )) preVisitExprConstFloat4;
    Func DAS_COMMENT((smart_ptr_raw<Expression>,ast::AstVisitor,smart_ptr_raw<ExprConstFloat4> const )) visitExprConstFloat4;
    Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<ExprConstString> const )) preVisitExprConstString;
    Func DAS_COMMENT((smart_ptr_raw<Expression>,ast::AstVisitor,smart_ptr_raw<ExprConstString> const )) visitExprConstString;
    Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<ExprConstDouble> const )) preVisitExprConstDouble;
    Func DAS_COMMENT((smart_ptr_raw<Expression>,ast::AstVisitor,smart_ptr_raw<ExprConstDouble> const )) visitExprConstDouble;
    Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<ExprFakeContext> const )) preVisitExprFakeContext;
    Func DAS_COMMENT((smart_ptr_raw<Expression>,ast::AstVisitor,smart_ptr_raw<ExprFakeContext> const )) visitExprFakeContext;
    Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<ExprFakeLineInfo> const )) preVisitExprFakeLineInfo;
    Func DAS_COMMENT((smart_ptr_raw<Expression>,ast::AstVisitor,smart_ptr_raw<ExprFakeLineInfo> const )) visitExprFakeLineInfo;
    Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<ExprReader> const )) preVisitExprReader;
    Func DAS_COMMENT((smart_ptr_raw<Expression>,ast::AstVisitor,smart_ptr_raw<ExprReader> const )) visitExprReader;
    Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<ExprUnsafe> const )) preVisitExprUnsafe;
    Func DAS_COMMENT((smart_ptr_raw<Expression>,ast::AstVisitor,smart_ptr_raw<ExprUnsafe> const )) visitExprUnsafe;
    Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<ExprCallMacro> const )) preVisitExprCallMacro;
    Func DAS_COMMENT((smart_ptr_raw<Expression>,ast::AstVisitor,smart_ptr_raw<ExprCallMacro> const )) visitExprCallMacro;
};
}
// unused structure MacroMacro
// unused structure TagFunctionAnnotation
// unused structure TagStructureAnnotation
// unused structure SetupAnyAnnotation
// unused structure SetupFunctionAnnotation
// unused structure SetupBlockAnnotation
// unused structure SetupStructureAnnotation
// unused structure SetupEnumerationAnnotation
// unused structure SetupContractAnnotation
// unused structure SetupReaderMacro
// unused structure SetupCommentReader
// unused structure SetupVariantMacro
// unused structure SetupForLoopMacro
// unused structure SetupCaptureMacro
// unused structure SetupTypeMacro
// unused structure SetupSimulateMacro
// unused structure SetupCallMacro
// unused structure SetupTypeInfoMacro
// unused structure SetupInferMacro
// unused structure SetupDirtyInferMacro
// unused structure SetupLintMacro
// unused structure SetupGlobalLintMacro
// unused structure SetupOptimizationMacro
// unused structure TagFunctionMacro
// unused structure BetterRttiVisitor
// unused structure DecltypeMacro
// unused structure DecltypeNoRefMacro
// unused structure TemplateMacro
// unused structure IsAnyType
// unused structure IsAnyArrayMacro
// unused structure IsAnyEnumMacro
// unused structure IsAnyBitfieldMacro
// unused structure IsAnyVectorType
// unused structure IsAnyStructMacro
// unused structure IsAnyNumericMacro
// unused structure IsAnyWorkhorse
// unused structure IsAnyWorkhorseNonPtrMacro
// unused structure IsAnyTupleNonPtrMacro
// unused structure IsAnyVariantNonPtrMacro
// unused structure IsAnyFunctionNonPtrMacro
// unused structure IsAnyLambdaMacro
// unused structure IsRefMacro
// unused structure IsPointer
// unused structure IsClass
// unused structure IsValueHandle
// unused structure Template
// unused structure TemplateVisitor
// unused structure RemoveDerefVisitor
// unused structure QRulesVisitor
// unused structure AstQCallMacro
// unused structure QMacro
// unused structure QBlockMacro
// unused structure QBlockToArrayMacro
// unused structure QBlockExprMacro
// unused structure QTypeMacro
// unused structure AstQNamedMacro
// unused structure AstQFunctionMacro
// unused structure AstQVariableMacro
// unused structure AstQNamedClassMacro
// unused structure AstQMethodMacro
namespace soa {

struct SOA_INDEX {
};
}
namespace soa {

struct SoaCallMacro {
    void * __rtti;
    Func DAS_COMMENT((void,ast::AstFunctionAnnotation)) __finalize;
    Func DAS_COMMENT((smart_ptr_raw<Expression>,ast::AstFunctionAnnotation,smart_ptr_raw<ExprCallFunc>,das::string)) transform;
    Func DAS_COMMENT((bool,ast::AstFunctionAnnotation,smart_ptr_raw<ExprCallFunc>,AnnotationArgumentList const ,AnnotationArgumentList const ,das::string)) verifyCall;
    Func DAS_COMMENT((bool,ast::AstFunctionAnnotation,smart_ptr_raw<Function>,ModuleGroup,AnnotationArgumentList const ,das::string)) apply;
    Func DAS_COMMENT((bool,ast::AstFunctionAnnotation,smart_ptr_raw<Function>,ModuleGroup,AnnotationArgumentList const ,das::string)) generic_apply;
    Func DAS_COMMENT((bool,ast::AstFunctionAnnotation,smart_ptr_raw<Function>,ModuleGroup,AnnotationArgumentList const ,AnnotationArgumentList const ,das::string)) finish;
    Func DAS_COMMENT((bool,ast::AstFunctionAnnotation,smart_ptr_raw<Function>,ModuleGroup,AnnotationArgumentList const ,AnnotationArgumentList const ,das::string,bool &)) patch;
    Func DAS_COMMENT((bool,ast::AstFunctionAnnotation,smart_ptr_raw<Function>,ModuleGroup,AnnotationArgumentList const ,AnnotationArgumentList const ,das::string)) fixup;
    Func DAS_COMMENT((bool,ast::AstFunctionAnnotation,smart_ptr_raw<Function>,ModuleGroup,AnnotationArgumentList const ,AnnotationArgumentList const ,das::string)) lint;
    Func DAS_COMMENT((void,ast::AstFunctionAnnotation,smart_ptr_raw<Function>,smart_ptr_raw<Context>)) complete;
    Func DAS_COMMENT((bool,ast::AstFunctionAnnotation,smart_ptr_raw<Function>,das::vector<smart_ptr<TypeDecl>>,AnnotationDeclaration const ,das::string)) isCompatible;
    Func DAS_COMMENT((bool,ast::AstFunctionAnnotation)) isSpecialized;
    Func DAS_COMMENT((void,ast::AstFunctionAnnotation,smart_ptr_raw<Function> const ,AnnotationDeclaration const ,das::string)) appendToMangledName;
};
}
namespace soa {

struct SoaStructMacro {
    void * __rtti;
    Func DAS_COMMENT((void,ast::AstStructureAnnotation)) __finalize;
    Func DAS_COMMENT((bool,ast::AstStructureAnnotation,smart_ptr_raw<Structure>,ModuleGroup,AnnotationArgumentList const ,das::string)) apply;
    Func DAS_COMMENT((bool,ast::AstStructureAnnotation,smart_ptr_raw<Structure>,ModuleGroup,AnnotationArgumentList const ,das::string)) finish;
    Func DAS_COMMENT((bool,ast::AstStructureAnnotation,smart_ptr_raw<Structure>,ModuleGroup,AnnotationArgumentList const ,das::string,bool &)) patch;
    Func DAS_COMMENT((void,ast::AstStructureAnnotation,smart_ptr_raw<Structure>,smart_ptr_raw<Context>)) complete;
    Func DAS_COMMENT((void,ast::AstStructureAnnotation,smart_ptr_raw<Structure>,AnnotationArgumentList const ,StringBuilderWriter)) aotPrefix;
    Func DAS_COMMENT((void,ast::AstStructureAnnotation,smart_ptr_raw<Structure>,AnnotationArgumentList const ,StringBuilderWriter)) aotBody;
    Func DAS_COMMENT((void,ast::AstStructureAnnotation,smart_ptr_raw<Structure>,AnnotationArgumentList const ,StringBuilderWriter)) aotSuffix;
    Func DAS_COMMENT((smart_ptr_raw<TypeDecl>,soa::SoaStructMacro,Structure::FieldDeclaration const )) make_field_type;
    Func DAS_COMMENT((smart_ptr_raw<Function>,soa::SoaStructMacro,smart_ptr_raw<Structure> const ,smart_ptr_raw<Structure>)) make_index_op;
    Func DAS_COMMENT((smart_ptr_raw<Function>,soa::SoaStructMacro,smart_ptr_raw<Structure> const ,smart_ptr_raw<Structure>)) make_length;
    Func DAS_COMMENT((smart_ptr_raw<Function>,soa::SoaStructMacro,smart_ptr_raw<Structure> const ,smart_ptr_raw<Structure>,smart_ptr_raw<TypeDecl> &,char * const ,char * const ,bool)) make_any_named_call;
    Func DAS_COMMENT((smart_ptr_raw<Function>,soa::SoaStructMacro,smart_ptr_raw<Structure> const ,smart_ptr_raw<Structure>)) make_erase;
    Func DAS_COMMENT((smart_ptr_raw<Function>,soa::SoaStructMacro,smart_ptr_raw<Structure>,smart_ptr_raw<Structure>,char * const ,char * const ,bool)) make_named_call;
};
}
namespace soa {

struct CollectAndReplaceIteratorFields {
    void * __rtti;
    Func DAS_COMMENT((void,ast::AstVisitor)) __finalize;
    Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<Program> const )) preVisitProgram;
    Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<Program> const )) visitProgram;
    Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<Program> const ,Module * const )) preVisitProgramBody;
    Func DAS_COMMENT((void,ast::AstVisitor,Module * const )) preVisitModule;
    Func DAS_COMMENT((void,ast::AstVisitor,Module * const )) visitModule;
    Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<ExprTypeDecl> const )) preVisitExprTypeDecl;
    Func DAS_COMMENT((smart_ptr_raw<Expression>,ast::AstVisitor,smart_ptr_raw<ExprTypeDecl> const )) visitExprTypeDecl;
    Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<TypeDecl> const )) preVisitTypeDecl;
    Func DAS_COMMENT((smart_ptr_raw<TypeDecl>,ast::AstVisitor,smart_ptr_raw<TypeDecl> const )) visitTypeDecl;
    Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<TypeDecl> const ,das::string const )) preVisitAlias;
    Func DAS_COMMENT((smart_ptr_raw<TypeDecl>,ast::AstVisitor,smart_ptr_raw<TypeDecl> const ,das::string const )) visitAlias;
    Func DAS_COMMENT((bool,ast::AstVisitor,Enumeration * const )) canVisitEnumeration;
    Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<Enumeration> const )) preVisitEnumeration;
    Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<Enumeration> const ,das::string const ,smart_ptr_raw<Expression> const ,bool)) preVisitEnumerationValue;
    Func DAS_COMMENT((smart_ptr_raw<Expression>,ast::AstVisitor,smart_ptr_raw<Enumeration> const ,das::string const ,smart_ptr_raw<Expression> const ,bool)) visitEnumerationValue;
    Func DAS_COMMENT((smart_ptr_raw<Enumeration>,ast::AstVisitor,smart_ptr_raw<Enumeration> const )) visitEnumeration;
    Func DAS_COMMENT((bool,ast::AstVisitor,Structure * const )) canVisitStructure;
    Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<Structure> const )) preVisitStructure;
    Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<Structure> const ,Structure::FieldDeclaration const ,bool)) preVisitStructureField;
    Func DAS_COMMENT((bool,ast::AstVisitor,smart_ptr_raw<Structure> const )) canVisitStructureFieldInit;
    Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<Structure> const ,Structure::FieldDeclaration const ,bool)) visitStructureField;
    Func DAS_COMMENT((smart_ptr_raw<Structure>,ast::AstVisitor,smart_ptr_raw<Structure> const )) visitStructure;
    Func DAS_COMMENT((bool,ast::AstVisitor,Function * const )) canVisitFunction;
    Func DAS_COMMENT((bool,ast::AstVisitor,Function * const ,smart_ptr_raw<Variable> const ,smart_ptr_raw<Expression> const )) canVisitFunctionArgumentInit;
    Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<Function> const )) preVisitFunction;
    Func DAS_COMMENT((smart_ptr_raw<Function>,ast::AstVisitor,smart_ptr_raw<Function> const )) visitFunction;
    Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<Function> const ,smart_ptr_raw<Variable> const ,bool)) preVisitFunctionArgument;
    Func DAS_COMMENT((smart_ptr_raw<Variable>,ast::AstVisitor,smart_ptr_raw<Function> const ,smart_ptr_raw<Variable> const ,bool)) visitFunctionArgument;
    Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<Function> const ,smart_ptr_raw<Variable> const ,smart_ptr_raw<Expression> const )) preVisitFunctionArgumentInit;
    Func DAS_COMMENT((smart_ptr_raw<Expression>,ast::AstVisitor,smart_ptr_raw<Function> const ,smart_ptr_raw<Variable> const ,smart_ptr_raw<Expression> const )) visitFunctionArgumentInit;
    Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<Function> const ,smart_ptr_raw<Expression> const )) preVisitFunctionBody;
    Func DAS_COMMENT((smart_ptr_raw<Expression>,ast::AstVisitor,smart_ptr_raw<Function> const ,smart_ptr_raw<Expression> const )) visitFunctionBody;
    Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<Expression> const )) preVisitExpression;
    Func DAS_COMMENT((smart_ptr_raw<Expression>,ast::AstVisitor,smart_ptr_raw<Expression> const )) visitExpression;
    Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<ExprBlock> const )) preVisitExprBlock;
    Func DAS_COMMENT((smart_ptr_raw<Expression>,ast::AstVisitor,smart_ptr_raw<ExprBlock> const )) visitExprBlock;
    Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<ExprBlock> const ,smart_ptr_raw<Variable> const ,bool)) preVisitExprBlockArgument;
    Func DAS_COMMENT((smart_ptr_raw<Variable>,ast::AstVisitor,smart_ptr_raw<ExprBlock> const ,smart_ptr_raw<Variable> const ,bool)) visitExprBlockArgument;
    Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<ExprBlock> const ,smart_ptr_raw<Variable> const ,smart_ptr_raw<Expression> const )) preVisitExprBlockArgumentInit;
    Func DAS_COMMENT((smart_ptr_raw<Expression>,ast::AstVisitor,smart_ptr_raw<ExprBlock> const ,smart_ptr_raw<Variable> const ,smart_ptr_raw<Expression> const )) visitExprBlockArgumentInit;
    Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<ExprBlock> const ,smart_ptr_raw<Expression> const )) preVisitExprBlockExpression;
    Func DAS_COMMENT((smart_ptr_raw<Expression>,ast::AstVisitor,smart_ptr_raw<ExprBlock> const ,smart_ptr_raw<Expression> const )) visitExprBlockExpression;
    Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<ExprBlock> const )) preVisitExprBlockFinal;
    Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<ExprBlock> const )) visitExprBlockFinal;
    Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<ExprBlock> const ,smart_ptr_raw<Expression> const )) preVisitExprBlockFinalExpression;
    Func DAS_COMMENT((smart_ptr_raw<Expression>,ast::AstVisitor,smart_ptr_raw<ExprBlock> const ,smart_ptr_raw<Expression> const )) visitExprBlockFinalExpression;
    Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<ExprLet> const )) preVisitExprLet;
    Func DAS_COMMENT((smart_ptr_raw<Expression>,ast::AstVisitor,smart_ptr_raw<ExprLet> const )) visitExprLet;
    Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<ExprLet> const ,smart_ptr_raw<Variable> const ,bool)) preVisitExprLetVariable;
    Func DAS_COMMENT((smart_ptr_raw<Variable>,ast::AstVisitor,smart_ptr_raw<ExprLet> const ,smart_ptr_raw<Variable> const ,bool)) visitExprLetVariable;
    Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<ExprLet> const ,smart_ptr_raw<Variable> const ,smart_ptr_raw<Expression> const )) preVisitExprLetVariableInit;
    Func DAS_COMMENT((smart_ptr_raw<Expression>,ast::AstVisitor,smart_ptr_raw<ExprLet> const ,smart_ptr_raw<Variable> const ,smart_ptr_raw<Expression> const )) visitExprLetVariableInit;
    Func DAS_COMMENT((bool,ast::AstVisitor,Variable * const )) canVisitGlobalVariable;
    Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<Program> const )) preVisitGlobalLet;
    Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<Program> const )) visitGlobalLet;
    Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<Variable> const ,bool)) preVisitGlobalLetVariable;
    Func DAS_COMMENT((smart_ptr_raw<Variable>,ast::AstVisitor,smart_ptr_raw<Variable> const ,bool)) visitGlobalLetVariable;
    Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<Variable> const ,smart_ptr_raw<Expression> const )) preVisitGlobalLetVariableInit;
    Func DAS_COMMENT((smart_ptr_raw<Expression>,ast::AstVisitor,smart_ptr_raw<Variable> const ,smart_ptr_raw<Expression> const )) visitGlobalLetVariableInit;
    Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<ExprStringBuilder> const )) preVisitExprStringBuilder;
    Func DAS_COMMENT((smart_ptr_raw<Expression>,ast::AstVisitor,smart_ptr_raw<ExprStringBuilder> const )) visitExprStringBuilder;
    Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<ExprStringBuilder> const ,smart_ptr_raw<Expression> const ,bool)) preVisitExprStringBuilderElement;
    Func DAS_COMMENT((smart_ptr_raw<Expression>,ast::AstVisitor,smart_ptr_raw<ExprStringBuilder> const ,smart_ptr_raw<Expression> const ,bool)) visitExprStringBuilderElement;
    Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<ExprNew> const )) preVisitExprNew;
    Func DAS_COMMENT((smart_ptr_raw<Expression>,ast::AstVisitor,smart_ptr_raw<ExprNew> const )) visitExprNew;
    Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<ExprNew> const ,smart_ptr_raw<Expression> const ,bool)) preVisitExprNewArgument;
    Func DAS_COMMENT((smart_ptr_raw<Expression>,ast::AstVisitor,smart_ptr_raw<ExprNew> const ,smart_ptr_raw<Expression> const ,bool)) visitExprNewArgument;
    Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<ExprNamedCall> const )) preVisitExprNamedCall;
    Func DAS_COMMENT((smart_ptr_raw<Expression>,ast::AstVisitor,smart_ptr_raw<ExprNamedCall> const )) visitExprNamedCall;
    Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<ExprNamedCall> const ,smart_ptr_raw<MakeFieldDecl> const ,bool)) preVisitExprNamedCallArgument;
    Func DAS_COMMENT((smart_ptr_raw<MakeFieldDecl>,ast::AstVisitor,smart_ptr_raw<ExprNamedCall> const ,smart_ptr_raw<MakeFieldDecl> const ,bool)) visitExprNamedCallArgument;
    Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<ExprLooksLikeCall> const )) preVisitExprLooksLikeCall;
    Func DAS_COMMENT((smart_ptr_raw<Expression>,ast::AstVisitor,smart_ptr_raw<ExprLooksLikeCall> const )) visitExprLooksLikeCall;
    Func DAS_COMMENT((bool,ast::AstVisitor,smart_ptr_raw<ExprLooksLikeCall> const ,smart_ptr_raw<Expression> const ,bool)) canVisitExprLooksLikeCallArgument;
    Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<ExprLooksLikeCall> const ,smart_ptr_raw<Expression> const ,bool)) preVisitExprLooksLikeCallArgument;
    Func DAS_COMMENT((smart_ptr_raw<Expression>,ast::AstVisitor,smart_ptr_raw<ExprLooksLikeCall> const ,smart_ptr_raw<Expression> const ,bool)) visitExprLooksLikeCallArgument;
    Func DAS_COMMENT((bool,ast::AstVisitor,ExprCall * const )) canVisitCall;
    Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<ExprCall> const )) preVisitExprCall;
    Func DAS_COMMENT((smart_ptr_raw<Expression>,ast::AstVisitor,smart_ptr_raw<ExprCall> const )) visitExprCall;
    Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<ExprCall> const ,smart_ptr_raw<Expression> const ,bool)) preVisitExprCallArgument;
    Func DAS_COMMENT((smart_ptr_raw<Expression>,ast::AstVisitor,smart_ptr_raw<ExprCall> const ,smart_ptr_raw<Expression> const ,bool)) visitExprCallArgument;
    Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<ExprNullCoalescing> const )) preVisitExprNullCoalescing;
    Func DAS_COMMENT((smart_ptr_raw<Expression>,ast::AstVisitor,smart_ptr_raw<ExprNullCoalescing> const )) visitExprNullCoalescing;
    Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<ExprNullCoalescing> const ,smart_ptr_raw<Expression> const )) preVisitExprNullCoalescingDefault;
    Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<ExprAt> const )) preVisitExprAt;
    Func DAS_COMMENT((smart_ptr_raw<Expression>,ast::AstVisitor,smart_ptr_raw<ExprAt> const )) visitExprAt;
    Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<ExprAt> const ,smart_ptr_raw<Expression> const )) preVisitExprAtIndex;
    Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<ExprSafeAt> const )) preVisitExprSafeAt;
    Func DAS_COMMENT((smart_ptr_raw<Expression>,ast::AstVisitor,smart_ptr_raw<ExprSafeAt> const )) visitExprSafeAt;
    Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<ExprSafeAt> const ,smart_ptr_raw<Expression> const )) preVisitExprSafeAtIndex;
    Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<ExprIs> const )) preVisitExprIs;
    Func DAS_COMMENT((smart_ptr_raw<Expression>,ast::AstVisitor,smart_ptr_raw<ExprIs> const )) visitExprIs;
    Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<ExprIs> const ,smart_ptr_raw<TypeDecl> const )) preVisitExprIsType;
    Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<ExprOp2> const )) preVisitExprOp2;
    Func DAS_COMMENT((smart_ptr_raw<Expression>,ast::AstVisitor,smart_ptr_raw<ExprOp2> const )) visitExprOp2;
    Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<ExprOp2> const ,smart_ptr_raw<Expression> const )) preVisitExprOp2Right;
    Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<ExprOp3> const )) preVisitExprOp3;
    Func DAS_COMMENT((smart_ptr_raw<Expression>,ast::AstVisitor,smart_ptr_raw<ExprOp3> const )) visitExprOp3;
    Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<ExprOp3> const ,smart_ptr_raw<Expression> const )) preVisitExprOp3Left;
    Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<ExprOp3> const ,smart_ptr_raw<Expression> const )) preVisitExprOp3Right;
    Func DAS_COMMENT((bool,ast::AstVisitor,smart_ptr_raw<ExprCopy> const )) isRightFirstExprCopy;
    Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<ExprCopy> const )) preVisitExprCopy;
    Func DAS_COMMENT((smart_ptr_raw<Expression>,ast::AstVisitor,smart_ptr_raw<ExprCopy> const )) visitExprCopy;
    Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<ExprCopy> const ,smart_ptr_raw<Expression> const )) preVisitExprCopyRight;
    Func DAS_COMMENT((bool,ast::AstVisitor,smart_ptr_raw<ExprMove> const )) isRightFirstExprMove;
    Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<ExprMove> const )) preVisitExprMove;
    Func DAS_COMMENT((smart_ptr_raw<Expression>,ast::AstVisitor,smart_ptr_raw<ExprMove> const )) visitExprMove;
    Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<ExprMove> const ,smart_ptr_raw<Expression> const )) preVisitExprMoveRight;
    Func DAS_COMMENT((bool,ast::AstVisitor,smart_ptr_raw<ExprClone> const )) isRightFirstExprClone;
    Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<ExprClone> const )) preVisitExprClone;
    Func DAS_COMMENT((smart_ptr_raw<Expression>,ast::AstVisitor,smart_ptr_raw<ExprClone> const )) visitExprClone;
    Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<ExprClone> const ,smart_ptr_raw<Expression> const )) preVisitExprCloneRight;
    Func DAS_COMMENT((bool,ast::AstVisitor,smart_ptr_raw<ExprAssume> const )) canVisitWithAliasSubexpression;
    Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<ExprAssume> const )) preVisitExprAssume;
    Func DAS_COMMENT((smart_ptr_raw<Expression>,ast::AstVisitor,smart_ptr_raw<ExprAssume> const )) visitExprAssume;
    Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<ExprWith> const )) preVisitExprWith;
    Func DAS_COMMENT((smart_ptr_raw<Expression>,ast::AstVisitor,smart_ptr_raw<ExprWith> const )) visitExprWith;
    Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<ExprWith> const ,smart_ptr_raw<Expression> const )) preVisitExprWithBody;
    Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<ExprWhile> const )) preVisitExprWhile;
    Func DAS_COMMENT((smart_ptr_raw<Expression>,ast::AstVisitor,smart_ptr_raw<ExprWhile> const )) visitExprWhile;
    Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<ExprWhile> const ,smart_ptr_raw<Expression> const )) preVisitExprWhileBody;
    Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<ExprTryCatch> const )) preVisitExprTryCatch;
    Func DAS_COMMENT((smart_ptr_raw<Expression>,ast::AstVisitor,smart_ptr_raw<ExprTryCatch> const )) visitExprTryCatch;
    Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<ExprTryCatch> const ,smart_ptr_raw<Expression> const )) preVisitExprTryCatchCatch;
    Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<ExprIfThenElse> const )) preVisitExprIfThenElse;
    Func DAS_COMMENT((smart_ptr_raw<Expression>,ast::AstVisitor,smart_ptr_raw<ExprIfThenElse> const )) visitExprIfThenElse;
    Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<ExprIfThenElse> const ,smart_ptr_raw<Expression> const )) preVisitExprIfThenElseIfBlock;
    Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<ExprIfThenElse> const ,smart_ptr_raw<Expression> const )) preVisitExprIfThenElseElseBlock;
    Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<ExprFor> const )) preVisitExprFor;
    Func DAS_COMMENT((smart_ptr_raw<Expression>,ast::AstVisitor,smart_ptr_raw<ExprFor> const )) visitExprFor;
    Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<ExprFor> const ,smart_ptr_raw<Variable> const ,bool)) preVisitExprForVariable;
    Func DAS_COMMENT((smart_ptr_raw<Variable>,ast::AstVisitor,smart_ptr_raw<ExprFor> const ,smart_ptr_raw<Variable> const ,bool)) visitExprForVariable;
    Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<ExprFor> const ,smart_ptr_raw<Expression> const ,bool)) preVisitExprForSource;
    Func DAS_COMMENT((smart_ptr_raw<Expression>,ast::AstVisitor,smart_ptr_raw<ExprFor> const ,smart_ptr_raw<Expression> const ,bool)) visitExprForSource;
    Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<ExprFor> const )) preVisitExprForStack;
    Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<ExprFor> const )) preVisitExprForBody;
    Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<ExprMakeVariant> const )) preVisitExprMakeVariant;
    Func DAS_COMMENT((smart_ptr_raw<Expression>,ast::AstVisitor,smart_ptr_raw<ExprMakeVariant> const )) visitExprMakeVariant;
    Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<ExprMakeVariant> const ,int32_t,smart_ptr_raw<MakeFieldDecl> const ,bool)) preVisitExprMakeVariantField;
    Func DAS_COMMENT((smart_ptr_raw<MakeFieldDecl>,ast::AstVisitor,smart_ptr_raw<ExprMakeVariant> const ,int32_t,smart_ptr_raw<MakeFieldDecl> const ,bool)) visitExprMakeVariantField;
    Func DAS_COMMENT((bool,ast::AstVisitor,smart_ptr_raw<ExprMakeStruct> const )) canVisitExprMakeStructBody;
    Func DAS_COMMENT((bool,ast::AstVisitor,smart_ptr_raw<ExprMakeStruct> const ,smart_ptr_raw<Expression> const )) canVisitExprMakeStructBlock;
    Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<ExprMakeStruct> const )) preVisitExprMakeStruct;
    Func DAS_COMMENT((smart_ptr_raw<Expression>,ast::AstVisitor,smart_ptr_raw<ExprMakeStruct> const )) visitExprMakeStruct;
    Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<ExprMakeStruct> const ,int32_t,bool)) preVisitExprMakeStructIndex;
    Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<ExprMakeStruct> const ,int32_t,bool)) visitExprMakeStructIndex;
    Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<ExprMakeStruct> const ,int32_t,smart_ptr_raw<MakeFieldDecl> const ,bool)) preVisitExprMakeStructField;
    Func DAS_COMMENT((smart_ptr_raw<MakeFieldDecl>,ast::AstVisitor,smart_ptr_raw<ExprMakeStruct> const ,int32_t,smart_ptr_raw<MakeFieldDecl> const ,bool)) visitExprMakeStructField;
    Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<ExprMakeStruct> const ,smart_ptr_raw<Expression> const )) preVisitMakeStructureBlock;
    Func DAS_COMMENT((smart_ptr_raw<Expression>,ast::AstVisitor,smart_ptr_raw<ExprMakeStruct> const ,smart_ptr_raw<Expression> const )) visitMakeStructureBlock;
    Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<ExprMakeArray> const )) preVisitExprMakeArray;
    Func DAS_COMMENT((smart_ptr_raw<Expression>,ast::AstVisitor,smart_ptr_raw<ExprMakeArray> const )) visitExprMakeArray;
    Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<ExprMakeArray> const ,int32_t,smart_ptr_raw<Expression> const ,bool)) preVisitExprMakeArrayIndex;
    Func DAS_COMMENT((smart_ptr_raw<Expression>,ast::AstVisitor,smart_ptr_raw<ExprMakeArray> const ,int32_t,smart_ptr_raw<Expression> const ,bool)) visitExprMakeArrayIndex;
    Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<ExprMakeTuple> const )) preVisitExprMakeTuple;
    Func DAS_COMMENT((smart_ptr_raw<Expression>,ast::AstVisitor,smart_ptr_raw<ExprMakeTuple> const )) visitExprMakeTuple;
    Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<ExprMakeTuple> const ,int32_t,smart_ptr_raw<Expression> const ,bool)) preVisitExprMakeTupleIndex;
    Func DAS_COMMENT((smart_ptr_raw<Expression>,ast::AstVisitor,smart_ptr_raw<ExprMakeTuple> const ,int32_t,smart_ptr_raw<Expression> const ,bool)) visitExprMakeTupleIndex;
    Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<ExprArrayComprehension> const )) preVisitExprArrayComprehension;
    Func DAS_COMMENT((smart_ptr_raw<Expression>,ast::AstVisitor,smart_ptr_raw<ExprArrayComprehension> const )) visitExprArrayComprehension;
    Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<ExprArrayComprehension> const ,smart_ptr_raw<Expression> const )) preVisitExprArrayComprehensionSubexpr;
    Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<ExprArrayComprehension> const ,smart_ptr_raw<Expression> const )) preVisitExprArrayComprehensionWhere;
    Func DAS_COMMENT((bool,ast::AstVisitor,smart_ptr_raw<ExprTypeInfo> const ,smart_ptr_raw<Expression> const )) canVisitExprTypeInfo;
    Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<ExprTypeInfo> const )) preVisitExprTypeInfo;
    Func DAS_COMMENT((smart_ptr_raw<Expression>,ast::AstVisitor,smart_ptr_raw<ExprTypeInfo> const )) visitExprTypeInfo;
    Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<ExprPtr2Ref> const )) preVisitExprPtr2Ref;
    Func DAS_COMMENT((smart_ptr_raw<Expression>,ast::AstVisitor,smart_ptr_raw<ExprPtr2Ref> const )) visitExprPtr2Ref;
    Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<ExprLabel> const )) preVisitExprLabel;
    Func DAS_COMMENT((smart_ptr_raw<Expression>,ast::AstVisitor,smart_ptr_raw<ExprLabel> const )) visitExprLabel;
    Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<ExprGoto> const )) preVisitExprGoto;
    Func DAS_COMMENT((smart_ptr_raw<Expression>,ast::AstVisitor,smart_ptr_raw<ExprGoto> const )) visitExprGoto;
    Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<ExprRef2Value> const )) preVisitExprRef2Value;
    Func DAS_COMMENT((smart_ptr_raw<Expression>,ast::AstVisitor,smart_ptr_raw<ExprRef2Value> const )) visitExprRef2Value;
    Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<ExprRef2Ptr> const )) preVisitExprRef2Ptr;
    Func DAS_COMMENT((smart_ptr_raw<Expression>,ast::AstVisitor,smart_ptr_raw<ExprRef2Ptr> const )) visitExprRef2Ptr;
    Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<ExprAddr> const )) preVisitExprAddr;
    Func DAS_COMMENT((smart_ptr_raw<Expression>,ast::AstVisitor,smart_ptr_raw<ExprAddr> const )) visitExprAddr;
    Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<ExprAssert> const )) preVisitExprAssert;
    Func DAS_COMMENT((smart_ptr_raw<Expression>,ast::AstVisitor,smart_ptr_raw<ExprAssert> const )) visitExprAssert;
    Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<ExprStaticAssert> const )) preVisitExprStaticAssert;
    Func DAS_COMMENT((smart_ptr_raw<Expression>,ast::AstVisitor,smart_ptr_raw<ExprStaticAssert> const )) visitExprStaticAssert;
    Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<ExprQuote> const )) preVisitExprQuote;
    Func DAS_COMMENT((smart_ptr_raw<Expression>,ast::AstVisitor,smart_ptr_raw<ExprQuote> const )) visitExprQuote;
    Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<ExprDebug> const )) preVisitExprDebug;
    Func DAS_COMMENT((smart_ptr_raw<Expression>,ast::AstVisitor,smart_ptr_raw<ExprDebug> const )) visitExprDebug;
    Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<ExprInvoke> const )) preVisitExprInvoke;
    Func DAS_COMMENT((smart_ptr_raw<Expression>,ast::AstVisitor,smart_ptr_raw<ExprInvoke> const )) visitExprInvoke;
    Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<ExprErase> const )) preVisitExprErase;
    Func DAS_COMMENT((smart_ptr_raw<Expression>,ast::AstVisitor,smart_ptr_raw<ExprErase> const )) visitExprErase;
    Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<ExprSetInsert> const )) preVisitExprSetInsert;
    Func DAS_COMMENT((smart_ptr_raw<Expression>,ast::AstVisitor,smart_ptr_raw<ExprSetInsert> const )) visitExprSetInsert;
    Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<ExprFind> const )) preVisitExprFind;
    Func DAS_COMMENT((smart_ptr_raw<Expression>,ast::AstVisitor,smart_ptr_raw<ExprFind> const )) visitExprFind;
    Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<ExprKeyExists> const )) preVisitExprKeyExists;
    Func DAS_COMMENT((smart_ptr_raw<Expression>,ast::AstVisitor,smart_ptr_raw<ExprKeyExists> const )) visitExprKeyExists;
    Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<ExprAscend> const )) preVisitExprAscend;
    Func DAS_COMMENT((smart_ptr_raw<Expression>,ast::AstVisitor,smart_ptr_raw<ExprAscend> const )) visitExprAscend;
    Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<ExprCast> const )) preVisitExprCast;
    Func DAS_COMMENT((smart_ptr_raw<Expression>,ast::AstVisitor,smart_ptr_raw<ExprCast> const )) visitExprCast;
    Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<ExprDelete> const ,smart_ptr_raw<Expression> const )) preVisitExprDeleteSizeExpression;
    Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<ExprDelete> const )) preVisitExprDelete;
    Func DAS_COMMENT((smart_ptr_raw<Expression>,ast::AstVisitor,smart_ptr_raw<ExprDelete> const )) visitExprDelete;
    Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<ExprVar> const )) preVisitExprVar;
    Func DAS_COMMENT((smart_ptr_raw<Expression>,ast::AstVisitor,smart_ptr_raw<ExprVar> const )) visitExprVar;
    Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<ExprTag> const )) preVisitExprTag;
    Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<ExprTag> const ,smart_ptr_raw<Expression> const )) preVisitExprTagValue;
    Func DAS_COMMENT((smart_ptr_raw<Expression>,ast::AstVisitor,smart_ptr_raw<ExprTag> const )) visitExprTag;
    Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<ExprField> const )) preVisitExprField;
    Func DAS_COMMENT((smart_ptr_raw<Expression>,ast::AstVisitor,smart_ptr_raw<ExprField> const )) visitExprField;
    Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<ExprSafeField> const )) preVisitExprSafeField;
    Func DAS_COMMENT((smart_ptr_raw<Expression>,ast::AstVisitor,smart_ptr_raw<ExprSafeField> const )) visitExprSafeField;
    Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<ExprSwizzle> const )) preVisitExprSwizzle;
    Func DAS_COMMENT((smart_ptr_raw<Expression>,ast::AstVisitor,smart_ptr_raw<ExprSwizzle> const )) visitExprSwizzle;
    Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<ExprIsVariant> const )) preVisitExprIsVariant;
    Func DAS_COMMENT((smart_ptr_raw<Expression>,ast::AstVisitor,smart_ptr_raw<ExprIsVariant> const )) visitExprIsVariant;
    Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<ExprAsVariant> const )) preVisitExprAsVariant;
    Func DAS_COMMENT((smart_ptr_raw<Expression>,ast::AstVisitor,smart_ptr_raw<ExprAsVariant> const )) visitExprAsVariant;
    Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<ExprSafeAsVariant> const )) preVisitExprSafeAsVariant;
    Func DAS_COMMENT((smart_ptr_raw<Expression>,ast::AstVisitor,smart_ptr_raw<ExprSafeAsVariant> const )) visitExprSafeAsVariant;
    Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<ExprOp1> const )) preVisitExprOp1;
    Func DAS_COMMENT((smart_ptr_raw<Expression>,ast::AstVisitor,smart_ptr_raw<ExprOp1> const )) visitExprOp1;
    Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<ExprReturn> const )) preVisitExprReturn;
    Func DAS_COMMENT((smart_ptr_raw<Expression>,ast::AstVisitor,smart_ptr_raw<ExprReturn> const )) visitExprReturn;
    Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<ExprYield> const )) preVisitExprYield;
    Func DAS_COMMENT((smart_ptr_raw<Expression>,ast::AstVisitor,smart_ptr_raw<ExprYield> const )) visitExprYield;
    Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<ExprBreak> const )) preVisitExprBreak;
    Func DAS_COMMENT((smart_ptr_raw<Expression>,ast::AstVisitor,smart_ptr_raw<ExprBreak> const )) visitExprBreak;
    Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<ExprContinue> const )) preVisitExprContinue;
    Func DAS_COMMENT((smart_ptr_raw<Expression>,ast::AstVisitor,smart_ptr_raw<ExprContinue> const )) visitExprContinue;
    Func DAS_COMMENT((bool,ast::AstVisitor,smart_ptr_raw<ExprMakeBlock> const )) canVisitMakeBlockBody;
    Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<ExprMakeBlock> const )) preVisitExprMakeBlock;
    Func DAS_COMMENT((smart_ptr_raw<Expression>,ast::AstVisitor,smart_ptr_raw<ExprMakeBlock> const )) visitExprMakeBlock;
    Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<ExprMakeGenerator> const )) preVisitExprMakeGenerator;
    Func DAS_COMMENT((smart_ptr_raw<Expression>,ast::AstVisitor,smart_ptr_raw<ExprMakeGenerator> const )) visitExprMakeGenerator;
    Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<ExprMemZero> const )) preVisitExprMemZero;
    Func DAS_COMMENT((smart_ptr_raw<Expression>,ast::AstVisitor,smart_ptr_raw<ExprMemZero> const )) visitExprMemZero;
    Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<ExprConst> const )) preVisitExprConst;
    Func DAS_COMMENT((smart_ptr_raw<Expression>,ast::AstVisitor,smart_ptr_raw<ExprConst> const )) visitExprConst;
    Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<ExprConstPtr> const )) preVisitExprConstPtr;
    Func DAS_COMMENT((smart_ptr_raw<Expression>,ast::AstVisitor,smart_ptr_raw<ExprConstPtr> const )) visitExprConstPtr;
    Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<ExprConstEnumeration> const )) preVisitExprConstEnumeration;
    Func DAS_COMMENT((smart_ptr_raw<Expression>,ast::AstVisitor,smart_ptr_raw<ExprConstEnumeration> const )) visitExprConstEnumeration;
    Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<ExprConstBitfield> const )) preVisitExprConstBitfield;
    Func DAS_COMMENT((smart_ptr_raw<Expression>,ast::AstVisitor,smart_ptr_raw<ExprConstBitfield> const )) visitExprConstBitfield;
    Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<ExprConstInt8> const )) preVisitExprConstInt8;
    Func DAS_COMMENT((smart_ptr_raw<Expression>,ast::AstVisitor,smart_ptr_raw<ExprConstInt8> const )) visitExprConstInt8;
    Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<ExprConstInt16> const )) preVisitExprConstInt16;
    Func DAS_COMMENT((smart_ptr_raw<Expression>,ast::AstVisitor,smart_ptr_raw<ExprConstInt16> const )) visitExprConstInt16;
    Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<ExprConstInt64> const )) preVisitExprConstInt64;
    Func DAS_COMMENT((smart_ptr_raw<Expression>,ast::AstVisitor,smart_ptr_raw<ExprConstInt64> const )) visitExprConstInt64;
    Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<ExprConstInt> const )) preVisitExprConstInt;
    Func DAS_COMMENT((smart_ptr_raw<Expression>,ast::AstVisitor,smart_ptr_raw<ExprConstInt> const )) visitExprConstInt;
    Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<ExprConstInt2> const )) preVisitExprConstInt2;
    Func DAS_COMMENT((smart_ptr_raw<Expression>,ast::AstVisitor,smart_ptr_raw<ExprConstInt2> const )) visitExprConstInt2;
    Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<ExprConstInt3> const )) preVisitExprConstInt3;
    Func DAS_COMMENT((smart_ptr_raw<Expression>,ast::AstVisitor,smart_ptr_raw<ExprConstInt3> const )) visitExprConstInt3;
    Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<ExprConstInt4> const )) preVisitExprConstInt4;
    Func DAS_COMMENT((smart_ptr_raw<Expression>,ast::AstVisitor,smart_ptr_raw<ExprConstInt4> const )) visitExprConstInt4;
    Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<ExprConstUInt8> const )) preVisitExprConstUInt8;
    Func DAS_COMMENT((smart_ptr_raw<Expression>,ast::AstVisitor,smart_ptr_raw<ExprConstUInt8> const )) visitExprConstUInt8;
    Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<ExprConstUInt16> const )) preVisitExprConstUInt16;
    Func DAS_COMMENT((smart_ptr_raw<Expression>,ast::AstVisitor,smart_ptr_raw<ExprConstUInt16> const )) visitExprConstUInt16;
    Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<ExprConstUInt64> const )) preVisitExprConstUInt64;
    Func DAS_COMMENT((smart_ptr_raw<Expression>,ast::AstVisitor,smart_ptr_raw<ExprConstUInt64> const )) visitExprConstUInt64;
    Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<ExprConstUInt> const )) preVisitExprConstUInt;
    Func DAS_COMMENT((smart_ptr_raw<Expression>,ast::AstVisitor,smart_ptr_raw<ExprConstUInt> const )) visitExprConstUInt;
    Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<ExprConstUInt2> const )) preVisitExprConstUInt2;
    Func DAS_COMMENT((smart_ptr_raw<Expression>,ast::AstVisitor,smart_ptr_raw<ExprConstUInt2> const )) visitExprConstUInt2;
    Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<ExprConstUInt3> const )) preVisitExprConstUInt3;
    Func DAS_COMMENT((smart_ptr_raw<Expression>,ast::AstVisitor,smart_ptr_raw<ExprConstUInt3> const )) visitExprConstUInt3;
    Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<ExprConstUInt4> const )) preVisitExprConstUInt4;
    Func DAS_COMMENT((smart_ptr_raw<Expression>,ast::AstVisitor,smart_ptr_raw<ExprConstUInt4> const )) visitExprConstUInt4;
    Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<ExprConstRange> const )) preVisitExprConstRange;
    Func DAS_COMMENT((smart_ptr_raw<Expression>,ast::AstVisitor,smart_ptr_raw<ExprConstRange> const )) visitExprConstRange;
    Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<ExprConstURange> const )) preVisitExprConstURange;
    Func DAS_COMMENT((smart_ptr_raw<Expression>,ast::AstVisitor,smart_ptr_raw<ExprConstURange> const )) visitExprConstURange;
    Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<ExprConstRange64> const )) preVisitExprConstRange64;
    Func DAS_COMMENT((smart_ptr_raw<Expression>,ast::AstVisitor,smart_ptr_raw<ExprConstRange64> const )) visitExprConstRange64;
    Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<ExprConstURange64> const )) preVisitExprConstURange64;
    Func DAS_COMMENT((smart_ptr_raw<Expression>,ast::AstVisitor,smart_ptr_raw<ExprConstURange64> const )) visitExprConstURange64;
    Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<ExprConstBool> const )) preVisitExprConstBool;
    Func DAS_COMMENT((smart_ptr_raw<Expression>,ast::AstVisitor,smart_ptr_raw<ExprConstBool> const )) visitExprConstBool;
    Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<ExprConstFloat> const )) preVisitExprConstFloat;
    Func DAS_COMMENT((smart_ptr_raw<Expression>,ast::AstVisitor,smart_ptr_raw<ExprConstFloat> const )) visitExprConstFloat;
    Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<ExprConstFloat2> const )) preVisitExprConstFloat2;
    Func DAS_COMMENT((smart_ptr_raw<Expression>,ast::AstVisitor,smart_ptr_raw<ExprConstFloat2> const )) visitExprConstFloat2;
    Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<ExprConstFloat3> const )) preVisitExprConstFloat3;
    Func DAS_COMMENT((smart_ptr_raw<Expression>,ast::AstVisitor,smart_ptr_raw<ExprConstFloat3> const )) visitExprConstFloat3;
    Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<ExprConstFloat4> const )) preVisitExprConstFloat4;
    Func DAS_COMMENT((smart_ptr_raw<Expression>,ast::AstVisitor,smart_ptr_raw<ExprConstFloat4> const )) visitExprConstFloat4;
    Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<ExprConstString> const )) preVisitExprConstString;
    Func DAS_COMMENT((smart_ptr_raw<Expression>,ast::AstVisitor,smart_ptr_raw<ExprConstString> const )) visitExprConstString;
    Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<ExprConstDouble> const )) preVisitExprConstDouble;
    Func DAS_COMMENT((smart_ptr_raw<Expression>,ast::AstVisitor,smart_ptr_raw<ExprConstDouble> const )) visitExprConstDouble;
    Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<ExprFakeContext> const )) preVisitExprFakeContext;
    Func DAS_COMMENT((smart_ptr_raw<Expression>,ast::AstVisitor,smart_ptr_raw<ExprFakeContext> const )) visitExprFakeContext;
    Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<ExprFakeLineInfo> const )) preVisitExprFakeLineInfo;
    Func DAS_COMMENT((smart_ptr_raw<Expression>,ast::AstVisitor,smart_ptr_raw<ExprFakeLineInfo> const )) visitExprFakeLineInfo;
    Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<ExprReader> const )) preVisitExprReader;
    Func DAS_COMMENT((smart_ptr_raw<Expression>,ast::AstVisitor,smart_ptr_raw<ExprReader> const )) visitExprReader;
    Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<ExprUnsafe> const )) preVisitExprUnsafe;
    Func DAS_COMMENT((smart_ptr_raw<Expression>,ast::AstVisitor,smart_ptr_raw<ExprUnsafe> const )) visitExprUnsafe;
    Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<ExprCallMacro> const )) preVisitExprCallMacro;
    Func DAS_COMMENT((smart_ptr_raw<Expression>,ast::AstVisitor,smart_ptr_raw<ExprCallMacro> const )) visitExprCallMacro;
    char * it_prefix;
    TTable<char *,bool> names;
};
}
namespace soa {

struct SoaForLoop {
    void * __rtti;
    Func DAS_COMMENT((void,ast::AstForLoopMacro)) __finalize;
    Func DAS_COMMENT((smart_ptr_raw<Expression>,ast::AstForLoopMacro,smart_ptr_raw<Program> const ,Module * const ,smart_ptr_raw<ExprFor> const )) visitExprFor;
};
}
extern StructInfo __struct_info__1e8db4ddc1444e12;
extern StructInfo __struct_info__9a70e6afd95b0571;
extern TypeInfo __type_info__5eddda99b960ff80;
extern TypeInfo __type_info__7c61f7ae88617bb2;
extern TypeInfo __type_info__c2f4bc15903e1610;
extern TypeInfo __type_info__defdb920e82da0f4;
extern TypeInfo __type_info__229aabe2f8bef1d9;
extern TypeInfo __type_info__6bdd529063b3dbeb;
extern TypeInfo __type_info__d551858bc6d43037;
extern TypeInfo __type_info__83c768ad9b3f81ea;
extern TypeInfo __type_info__241df6ccda394202;
extern TypeInfo __type_info__4dee28f2a93bbef7;
extern TypeInfo __type_info__5047b5dbcc2127cd;
extern TypeInfo __type_info__7e04c1d12891d606;
extern TypeInfo __type_info__7dd1c1d1283b2d06;
extern TypeInfo __type_info__636dc1714c171367;
extern TypeInfo __type_info__bc5b346893db35b;
extern TypeInfo __type_info__93546827b32c5422;
extern TypeInfo __type_info__118bfa23ce6c000c;
extern TypeInfo __type_info__9c92a72bb3a64bfa;
extern TypeInfo __type_info__ea252439573ea197;
extern TypeInfo __type_info__7f81cc8503986a86;
extern TypeInfo __type_info__b6d18d4b3fadccd4;
extern TypeInfo __type_info__4f4cc10892c6c61;
extern TypeInfo __type_info__65f51082d9833a;
extern TypeInfo __type_info__9089610918ba11f;
extern TypeInfo __type_info__50c7808637778d65;
extern TypeInfo __type_info__87ae85b131d91f57;
extern TypeInfo __type_info__2d27aed7dd587c30;
extern TypeInfo __type_info__31b7a5d7e3ad4eb7;
extern TypeInfo __type_info__2914e4d7d4fafa72;
extern TypeInfo __type_info__773524bb75b61932;
extern TypeInfo __type_info__4a0758d80e688a0e;
extern TypeInfo __type_info__a28688c7ffe035ce;
extern TypeInfo __type_info__a45346c81e6a9b80;
extern TypeInfo __type_info__4f02b717be42f032;
extern TypeInfo __type_info__214ca0a8404236ce;
extern TypeInfo __type_info__e9cb7c9300717d9e;
extern TypeInfo __type_info__f108ab47d962e793;
extern TypeInfo __type_info__514742689af99de7;
extern TypeInfo __type_info__563e42636db280e7;
extern TypeInfo __type_info__a17d42718ebadfe7;
extern TypeInfo __type_info__63e1b8a29ad93469;
extern TypeInfo __type_info__f6614284ea50cbe7;
extern TypeInfo __type_info__518dd4a2ad91defd;
extern TypeInfo __type_info__b8524aede8fd2575;
extern TypeInfo __type_info__d2fee6b26665c989;
extern TypeInfo __type_info__5b91ede0508873e;
extern TypeInfo __type_info__350b375c34e0c48a;
extern TypeInfo __type_info__c84cf5ded2cd1cd8;
extern TypeInfo __type_info__120723ecb6510065;
extern TypeInfo __type_info__e672712e93e236ba;
extern TypeInfo __type_info__3229d47464f4ad50;
extern TypeInfo __type_info__511818eae83f8137;
extern TypeInfo __type_info__849126a4e3db3268;
extern TypeInfo __type_info__ee83d76e6f9a3c81;
extern TypeInfo __type_info__9745884abdafbe87;
extern TypeInfo __type_info__41023c185ec41d2;
extern TypeInfo __type_info__88db72c3eb8c93b1;
extern TypeInfo __type_info__c3c8c780df6c5865;
extern TypeInfo __type_info__8a5e2edb26418a2a;
extern TypeInfo __type_info__837624c70f8f1fa1;
extern TypeInfo __type_info__7f9fc2c601e28df1;
extern TypeInfo __type_info__6ad276912e16c445;
extern TypeInfo __type_info__349161eed600549f;
extern TypeInfo __type_info__8faf3ae8c5ebe47a;
extern TypeInfo __type_info__f44650fbe99befd9;
extern TypeInfo __type_info__e0b574ceb6c8c70f;
extern TypeInfo __type_info__6c1a6b092c78a88;
extern TypeInfo __type_info__5276a743108434eb;
extern TypeInfo __type_info__ea03eef331aabf4;
extern TypeInfo __type_info__4191dbf23146a87e;
extern TypeInfo __type_info__f66cc598ea369f61;
extern TypeInfo __type_info__c19751d6d5da74e2;
extern TypeInfo __type_info__44cd26f4cb3df7e1;
extern TypeInfo __type_info__5d6138f13e1e88c4;
extern TypeInfo __type_info__e7e2063b91ac55a1;
extern TypeInfo __type_info__c7c0e4fba3dcbfcf;
extern TypeInfo __type_info__c5915ffba474f7fe;
extern TypeInfo __type_info__ca2136fbaac99425;
extern TypeInfo __type_info__7d9fd489616ae8d;
extern TypeInfo __type_info__9dfe8a83730428c8;
extern TypeInfo __type_info__6628bcbce7db6a7d;
extern TypeInfo __type_info__1151bc4127672205;
extern TypeInfo __type_info__bba83b75d4855b7e;
extern TypeInfo __type_info__1a5b7f11cf3fb5b5;
extern TypeInfo __type_info__45d77ccae958b9de;
extern TypeInfo __type_info__b5e62a55ec68b6b5;
extern TypeInfo __type_info__a7adf4b0a367d897;
extern TypeInfo __type_info__9c37565e66334661;
extern TypeInfo __type_info__74372feec5a81686;
extern TypeInfo __type_info__4e7dff8bb14f539;
extern TypeInfo __type_info__6bb94e24ea14ce9a;
extern TypeInfo __type_info__631c9e15ba7d5036;
extern TypeInfo __type_info__c1c6f9bc0741f232;
extern TypeInfo __type_info__3b037c8d587730b0;
extern TypeInfo __type_info__563543a880fdcea2;
extern TypeInfo __type_info__eb22258b16c8c6df;
extern TypeInfo __type_info__f5c1d1c41d788f7;
extern TypeInfo __type_info__9cac32b4050a2fb8;
extern TypeInfo __type_info__c758d466d1a06ae2;
extern TypeInfo __type_info__60501e84f49c29e1;
extern TypeInfo __type_info__2dd484863625d80;
extern TypeInfo __type_info__34b7c04894c15d5;
extern TypeInfo __type_info__f9220d94c6b964b5;
extern TypeInfo __type_info__79c6e4b278757551;
extern TypeInfo __type_info__e266b5ccef058802;
extern TypeInfo __type_info__624d371c76b25aa4;
extern TypeInfo __type_info__29c0090cdbf7525c;
extern TypeInfo __type_info__586f0da79a6e613d;
extern TypeInfo __type_info__98064c57b4bcca5a;
extern TypeInfo __type_info__9d10785eb07580e0;
extern TypeInfo __type_info__9a5e492166d49949;
extern TypeInfo __type_info__e57b0f261f47b890;
extern TypeInfo __type_info__d6b8ed05d16e9f27;
extern TypeInfo __type_info__defb2f7795e0cf8c;
extern TypeInfo __type_info__a3a6bcfebaf8fcd8;
extern TypeInfo __type_info__af81fe4c86352052;
extern TypeInfo __type_info__af8afe4c86446b52;
extern TypeInfo __type_info__cd505ad3b1c59cc6;
extern TypeInfo __type_info__7329fadda4ca251c;
extern TypeInfo __type_info__3693bdfd1150bb56;
extern TypeInfo __type_info__71ff6f045d2186f1;
extern TypeInfo __type_info__acc5cdadba98f68e;
extern TypeInfo __type_info__2055bdfdcee6bf5e;
extern TypeInfo __type_info__fb56aefdaf9de951;
extern TypeInfo __type_info__cb4a7f89a13eab36;
extern TypeInfo __type_info__71c84a7f531ca5bb;
extern TypeInfo __type_info__afd7e462d2caeebb;
extern TypeInfo __type_info__54fceee561bff5eb;
extern TypeInfo __type_info__a0219258cb3926ee;
extern TypeInfo __type_info__1afef6e5304b2283;
extern TypeInfo __type_info__898a3dd26b376c6a;
extern TypeInfo __type_info__699f14ced40c8382;
extern TypeInfo __type_info__ad18450df661455f;
extern TypeInfo __type_info__91bbd69210f68e07;
extern TypeInfo __type_info__3ee228fe47602659;
extern TypeInfo __type_info__365a0d74b6e3ae27;
extern TypeInfo __type_info__72bac02d9b0c1dd;
extern TypeInfo __type_info__3c5ac02d6cd98dd;
extern TypeInfo __type_info__f2c7ac02c85dcbdd;
extern TypeInfo __type_info__bfbf448dd60c6211;
extern TypeInfo __type_info__9307dd967ffe2b49;
extern TypeInfo __type_info__8903e59677a2e7e1;
extern TypeInfo __type_info__8c69e5967a8610e1;
extern TypeInfo __type_info__8237e59671dc95e1;
extern TypeInfo __type_info__7b85db966c4260e3;
extern TypeInfo __type_info__aaffe596948281e1;
extern TypeInfo __type_info__108c5371ed782a25;
extern TypeInfo __type_info__ef0e5b71d12c4f0e;
extern TypeInfo __type_info__6dfe2527715392d1;
extern TypeInfo __type_info__44e10b9c0b7ea95f;
extern TypeInfo __type_info__81d4b6e4402ada81;
extern TypeInfo __type_info__32209cf3725705b0;
extern TypeInfo __type_info__50a064d75d4cc1fb;
extern TypeInfo __type_info__50a063d75d4cc048;
extern TypeInfo __type_info__50a06ad75d4ccc2d;
extern TypeInfo __type_info__2b5f1ef36c99e51b;
extern TypeInfo __type_info__50a05ed75d4cb7c9;
extern TypeInfo __type_info__50ca60d75d94192f;
extern TypeInfo __type_info__ee05ad47ac112e5f;
extern TypeInfo __type_info__a1fe7a142c668903;
extern TypeInfo __type_info__37bd8d7fdf3c5374;
extern TypeInfo __type_info__10fefde527f0e316;
extern TypeInfo __type_info__8ea2bb6c84fe54ae;
extern TypeInfo __type_info__643b022638807dc3;
extern TypeInfo __type_info__e166b9c4a79e779;
extern TypeInfo __type_info__a3d5bceeff53f155;
extern TypeInfo __type_info__f85f434a5cfa7cf9;
extern TypeInfo __type_info__c1ab66e04afa3a7;
extern TypeInfo __type_info__b8cb16fdfafa869b;
extern TypeInfo __type_info__598840fdaa05c3ef;
extern TypeInfo __type_info__aa2eff9e8711b4c;
extern TypeInfo __type_info__833e12e4dcd8153d;
extern TypeInfo __type_info__f1f05ee81890b310;
extern TypeInfo __type_info__afca8289899d784f;
extern TypeInfo __type_info__725600cc59f9ef1;
extern TypeInfo __type_info__5a876ec502d05cd5;
extern TypeInfo __type_info__a8d3190cd853597a;
extern TypeInfo __type_info__b3d9c0cc943b4165;
extern TypeInfo __type_info__d07c067a5c7b8ff4;
extern TypeInfo __type_info__7260bd93a15a7ff1;
extern TypeInfo __type_info__e9813cd85e320ce1;
extern TypeInfo __type_info__644a49dea6863e78;
extern TypeInfo __type_info__b6c344d07fc80acd;
extern TypeInfo __type_info__94e15ebe6d2ac6c5;
extern TypeInfo __type_info__749bdb083606521a;
extern TypeInfo __type_info__bbedea2da76c1cbd;
extern TypeInfo __type_info__6508f9c8d2b82c4a;
extern TypeInfo __type_info__c88d1b35f2ffa823;
extern TypeInfo __type_info__f14dc0d72b72a465;
extern TypeInfo __type_info__e4bc23ea0da25d79;
extern TypeInfo __type_info__b4d3bed2a010acf4;
extern TypeInfo __type_info__b839bed2a2f3d5f4;
extern TypeInfo __type_info__bb9fbed2a5d6fef4;
extern TypeInfo __type_info__b0f72e776d005eaf;
extern TypeInfo __type_info__29261b9b611e6f1b;
extern TypeInfo __type_info__64b15f9df38db54f;
extern TypeInfo __type_info__d27a1f910d191ab3;
extern TypeInfo __type_info__6dc5617548466ef3;
extern TypeInfo __type_info__15a45142a97c9b3e;
extern TypeInfo __type_info__cfc6c6515483a76b;
extern TypeInfo __type_info__a87ef47d40240d3c;
extern TypeInfo __type_info__10ddfd98f14d71c1;
extern TypeInfo __type_info__4396458b6cca487d;
extern TypeInfo __type_info__7a94f4cc4bcf20e5;
extern TypeInfo __type_info__278bc6d46dadffa8;
extern TypeInfo __type_info__da0e82cafc1e70b1;
extern TypeInfo __type_info__7b55c0a63e321fc1;
extern TypeInfo __type_info__5e2809979d5f78c9;
extern TypeInfo __type_info__60a144dd7cf1ba91;
extern TypeInfo __type_info__c15e41a8ee5ebf97;
extern TypeInfo __type_info__a88454b76bb549ba;
extern TypeInfo __type_info__811c0b03f452ec1;
extern TypeInfo __type_info__51f018132be6c64;
extern TypeInfo __type_info__b99012ac7e42bacf;
extern TypeInfo __type_info__8873b51c25d24aa7;
extern TypeInfo __type_info__960dd6428887a234;
extern TypeInfo __type_info__a57bf935c2dd03;
extern TypeInfo __type_info__acd33335f9c1e498;
extern TypeInfo __type_info__60d16a2d23420951;
extern TypeInfo __type_info__ce241e3005cc873b;
extern TypeInfo __type_info__ccd32e474e9a33eb;
extern TypeInfo __type_info__8afce1a80940fc9e;
extern TypeInfo __type_info__125855d9cd771ead;
extern TypeInfo __type_info__21586ce84f433a21;
extern TypeInfo __type_info__c08112e43ab7daf4;
extern TypeInfo __type_info__e4765bc563f255e;
extern TypeInfo __type_info__6636442e03391ebf;
extern TypeInfo __type_info__4cdbed951d30a5d1;
extern TypeInfo __type_info__c52835f1e7c9ab84;
extern TypeInfo __type_info__7e104fcf0cd430e4;
extern TypeInfo __type_info__afcf203e0d7d50d;
extern TypeInfo __type_info__4d5fdda373bcfbd1;
extern TypeInfo __type_info__af63df4c8601f1a5;
extern TypeInfo __type_info__af63ee4c86020b22;
extern TypeInfo __type_info__af63eb4c86020609;
extern VarInfo __var_info__404fbd8651779228;
extern VarInfo __var_info__fb898b509e28d9c8;
extern VarInfo __var_info__802b484819ed0c2d;
extern VarInfo __var_info__7c71c3b025ab6c55;
extern VarInfo __var_info__73ec7f5588dcbccc;
extern VarInfo __var_info__6df9772d1def04b5;
extern VarInfo __var_info__afd5e182c47c834d;
extern VarInfo __var_info__f722ae5ea36a9c48;
extern VarInfo __var_info__9bf7e6bedd4bf03b;
extern VarInfo __var_info__4d2aa20c479aea6a;
extern VarInfo __var_info__b8106945f6e3fc3a;
extern VarInfo __var_info__717cd02cdb41bb2a;
extern VarInfo __var_info__b9386f8f015bfb1e;
extern VarInfo __var_info__8941a79636fd28ed;
extern VarInfo __var_info__591a1931dbf740b7;
extern VarInfo __var_info__e8e0d09fd41dec39;
extern VarInfo __var_info__2d81bedb489517e7;
extern VarInfo __var_info__2c95acdb472c618f;
extern VarInfo __var_info__dfaf2e5a156cac5b;
extern VarInfo __var_info__139f4dd326162ccb;
extern VarInfo __var_info__7c24884234a37391;
extern VarInfo __var_info__58ee4c02dcf52dbc;
extern VarInfo __var_info__d793210438da73b2;
extern VarInfo __var_info__4380a05405d544a9;
extern VarInfo __var_info__1dd9197835443a11;
extern VarInfo __var_info__7d0d2be93f052825;
extern VarInfo __var_info__2a88dc897f736b05;
extern VarInfo __var_info__2a79f0897f884291;
extern VarInfo __var_info__f36af989502c64dc;
extern VarInfo __var_info__363d68bc53f7e730;
extern VarInfo __var_info__6caf569fc5ada20f;
extern VarInfo __var_info__e4da73044655d61b;
extern VarInfo __var_info__fad133f08b433e3b;
extern VarInfo __var_info__883c3e97b305c7e1;
extern VarInfo __var_info__3eb766e159e2db49;
extern VarInfo __var_info__9f8350e9c19f8255;
extern VarInfo __var_info__1fbffaa00541e191;
extern VarInfo __var_info__81245a85698ce65d;
extern VarInfo __var_info__4ee15802d484dfce;
extern VarInfo __var_info__6a62a96f37358e75;
extern VarInfo __var_info__9e31d981d2f6e393;
extern VarInfo __var_info__4ee94302d492541f;
extern VarInfo __var_info__f5c258045726d71a;
extern VarInfo __var_info__6e8908b5e9b654b3;
extern VarInfo __var_info__22e143125efe0694;
extern VarInfo __var_info__3575e938698ac7f2;
extern VarInfo __var_info__68cb32f89791abb7;
extern VarInfo __var_info__2cab45e6e29dabd4;
extern VarInfo __var_info__63e2d4927d6419f0;
extern VarInfo __var_info__619835e3cb9cb14b;
extern VarInfo __var_info__72550b12fb41909b;
extern VarInfo __var_info__72550a12fb418ee8;
extern VarInfo __var_info__72551112fb419acd;
extern VarInfo __var_info__4a49f2369627a5ce;
extern VarInfo __var_info__633a91c125407a4d;
extern VarInfo __var_info__634c8ec1255f0b34;
extern VarInfo __var_info__634c8fc1255f0ce7;
extern VarInfo __var_info__634c8cc1255f07ce;
extern VarInfo __var_info__63388ac1253d0868;
extern VarInfo __var_info__634c88c1255f0102;
extern VarInfo __var_info__9f39d836de4c48a0;
extern VarInfo __var_info__23dd3c465c5aacf8;
extern VarInfo __var_info__4b86398eedf1a60a;
extern VarInfo __var_info__6c8186fb9d866b04;
extern VarInfo __var_info__d01a3f236d5d52e9;
extern VarInfo __var_info__5a3228324ddf49ed;
extern VarInfo __var_info__cfe83f236d085ce9;
extern VarInfo __var_info__cfe93f236d0a0fe9;
extern VarInfo __var_info__cfee3f236d128ee9;
extern VarInfo __var_info__5d98263250c26f87;
extern VarInfo __var_info__cff23f236d195ae9;
extern VarInfo __var_info__aaa036240f9f1383;
extern VarInfo __var_info__af4bb646a82e19f5;
extern VarInfo __var_info__7363dd5a3a53e072;
extern VarInfo __var_info__7df04402fc0efcd2;
extern VarInfo __var_info__cd5d0594bbd31183;
extern VarInfo __var_info__4b98c0e117b36490;
extern VarInfo __var_info__81bbbfe1459b2b77;
extern VarInfo __var_info__e6914f2eefeace48;
extern VarInfo __var_info__b1b57985905c2546;
extern VarInfo __var_info__6b597ff2a170677e;
extern VarInfo __var_info__5790fbaa5aa10da3;
extern VarInfo __var_info__2b510ff5bd61305c;
extern VarInfo __var_info__69da5802eb324301;
extern VarInfo __var_info__7e1a4402fc47eb05;
extern VarInfo __var_info__b6a2068ef526c805;
extern VarInfo __var_info__ce17076d9f8cf753;
extern VarInfo __var_info__bea7e44555360f20;
extern VarInfo __var_info__bb6c0827af8b5346;
extern VarInfo __var_info__7e014002fc204c62;
extern VarInfo __var_info__c51c17bf11ebed33;
extern VarInfo __var_info__fb77ceef0b6231cd;
extern VarInfo __var_info__c099ede2b5923b6e;
extern VarInfo __var_info__7f07400e46e3e0c3;
extern VarInfo __var_info__363c70bc53f641c8;
extern VarInfo __var_info__eda32c89381565ec;
extern VarInfo __var_info__c9b7983395b4b39d;
extern VarInfo __var_info__e32df143ca82380d;
extern VarInfo __var_info__b84f13cf26eda329;
extern VarInfo __var_info__5c324202df78f6a9;
extern VarInfo __var_info__b5f04820b8d5b502;
extern VarInfo __var_info__86d2782a6bf7b7d0;
extern VarInfo __var_info__bbbb051551a66a0a;
extern VarInfo __var_info__29a0d7a9e4b9e5f6;
extern VarInfo __var_info__92682c1a46d2a5e1;
extern VarInfo __var_info__18a580c033b89448;
extern VarInfo __var_info__ff9cbce939b8bbe7;
extern VarInfo __var_info__aaec8cf0fd2ec5ac;
extern VarInfo __var_info__6c47240f97a09f01;
extern VarInfo __var_info__8173a7f23281b52c;
extern VarInfo __var_info__3694ecd9abede4e4;
extern VarInfo __var_info__f1f74913939e753c;
extern VarInfo __var_info__4bdfc151dedc4da9;
extern VarInfo __var_info__305131e8c4628f64;
extern VarInfo __var_info__bab2808884e1a301;
extern VarInfo __var_info__4fa475cf1e4911cf;
extern VarInfo __var_info__7e083e02fc1adb06;
extern VarInfo __var_info__eca633024932f86f;
extern VarInfo __var_info__54a28bc44192b9c1;
extern VarInfo __var_info__9d289c0e202c475;
extern VarInfo __var_info__5c394f02df7f2b6e;
extern VarInfo __var_info__ae3ae56613d11d42;
extern VarInfo __var_info__f2f0e741960e1177;
extern VarInfo __var_info__be686e26bffa9144;
extern VarInfo __var_info__14d78d02a2d94ef1;
extern VarInfo __var_info__14d78a02a2d949d8;
extern VarInfo __var_info__2bce2565f2557691;
extern VarInfo __var_info__14d78b02a2d94b8b;
extern VarInfo __var_info__fab868f914151ffa;
extern VarInfo __var_info__28a45465ed4640ea;
extern VarInfo __var_info__4585e1e3fd2a1c4f;
extern VarInfo __var_info__6ff71915ee4dc68;
extern VarInfo __var_info__a1e2cce18d36fa97;
extern VarInfo __var_info__e5a725d92e24b68f;
extern VarInfo __var_info__8bd3f7a275b2fdb6;
extern VarInfo __var_info__6ecbd3e161d61b3f;
extern VarInfo __var_info__648af9cb3fe807e2;
extern VarInfo __var_info__415c6fcc77e22573;
extern VarInfo __var_info__452510e5117043d2;
extern VarInfo __var_info__a13178df83f85383;
extern VarInfo __var_info__64c3392746be1d39;
extern VarInfo __var_info__97956f84758cbd42;
extern VarInfo __var_info__89002db3d2a382d9;
extern VarInfo __var_info__dcd62ab4848d54b8;
extern VarInfo __var_info__68bdfe50f2934580;
extern VarInfo __var_info__4e485f02d3a679c8;
extern VarInfo __var_info__2c13e88b48ba86ba;
extern VarInfo __var_info__6c007322603a901e;
extern VarInfo __var_info__60013666243ecb3;
extern VarInfo __var_info__7c1c3f2d00ff5aa8;
extern VarInfo __var_info__5cfa422ce6237a8e;
extern VarInfo __var_info__893bf90e80994551;
extern VarInfo __var_info__4e4f4402d3ac6a95;
extern VarInfo __var_info__146b37efc8a0690c;
extern VarInfo __var_info__1aa99d5f0bdf07c0;
extern VarInfo __var_info__69e44002eb742df2;
extern VarInfo __var_info__f4d0322851dbbd1c;
extern VarInfo __var_info__4ca48ef5fe7d5999;
extern VarInfo __var_info__d087bf88dadfc976;
extern VarInfo __var_info__9cd5a85ccfeceec9;
extern VarInfo __var_info__5c978d0137240e4a;
extern VarInfo __var_info__eec6a05fd6476150;
extern VarInfo __var_info__a3c16915074de26f;
extern VarInfo __var_info__a27d86cb8c142849;
extern VarInfo __var_info__5e30630df7d456a2;
extern VarInfo __var_info__8341a2400990c170;
extern VarInfo __var_info__a8c08fb6b3ae9ad9;
extern VarInfo __var_info__47802d686ce7346b;
extern VarInfo __var_info__571af9efe83812fc;
extern VarInfo __var_info__5c630a811e350e10;
extern VarInfo __var_info__41fcc1ce9520d068;
extern VarInfo __var_info__b391f5eabc24c0ed;
extern VarInfo __var_info__d80a645b6da8c535;
extern VarInfo __var_info__36c4426c738ddad;
extern VarInfo __var_info__6cad416db0286952;
extern VarInfo __var_info__eaf6264c8c2101ff;
extern VarInfo __var_info__98a9ffc4527873f2;
extern VarInfo __var_info__5935677610234a58;
extern VarInfo __var_info__8e3ef7346246d5cf;
extern VarInfo __var_info__862b83af69f35e28;
extern VarInfo __var_info__d5937361ae5f76f8;
extern VarInfo __var_info__bd93646199fbaf0b;
extern VarInfo __var_info__9dedb59394916004;
extern VarInfo __var_info__29320d51a2c5f4d;
extern VarInfo __var_info__e68dd1c7036b46b6;
extern VarInfo __var_info__7ece88bde3d9c42c;
extern VarInfo __var_info__4625bd7717ba4469;
extern VarInfo __var_info__8209de0cf0162633;
extern VarInfo __var_info__f6130cfee51f9aa1;
extern VarInfo __var_info__249b22d5373d404d;
extern VarInfo __var_info__c51617cedb37de35;
extern VarInfo __var_info__e52aaee50baa0521;
extern VarInfo __var_info__8517df657f4530a;
extern VarInfo __var_info__921c0fceafe8699d;
extern VarInfo __var_info__ba7813ced1e54836;
extern VarInfo __var_info__be5700ced58d4272;
extern VarInfo __var_info__f9ae7a6ab1908649;
extern VarInfo __var_info__6ab1c296bcd15d4d;
extern VarInfo __var_info__566ddd22f95b7cfb;
extern VarInfo __var_info__c8ee8b2e94f52665;
extern VarInfo __var_info__ab85832951adf487;
extern VarInfo __var_info__abb3832951fc1e87;
extern VarInfo __var_info__abb2832951fa6b87;
extern VarInfo __var_info__abb1832951f8b887;
extern VarInfo __var_info__6794a996ba4a520f;
extern VarInfo __var_info__18f4641e60fa4fdb;
extern VarInfo __var_info__6786a996ba32880f;
extern VarInfo __var_info__6787a996ba343b0f;
extern VarInfo __var_info__6788a996ba35ee0f;
extern VarInfo __var_info__29f2661e6f6a2041;
extern VarInfo __var_info__677ca996ba218a0f;
extern VarInfo __var_info__893bad96d6e1b2dc;
extern VarInfo __var_info__c0c341f22742465d;
extern VarInfo __var_info__834b777876181e6b;
extern VarInfo __var_info__ac4a824df3a23f27;
extern VarInfo __var_info__f6bea3965a10ae11;
extern VarInfo __var_info__5688187b0a327e60;
extern VarInfo __var_info__569e1b7b0a57e579;
extern VarInfo __var_info__569e1a7b0a57e3c6;
extern VarInfo __var_info__569e1d7b0a57e8df;
extern VarInfo __var_info__568a1f7b0a35f045;
extern VarInfo __var_info__569e217b0a57efab;
extern VarInfo __var_info__f0945e93d1915b71;
extern VarInfo __var_info__5d8bfc2d1a2015a5;
extern VarInfo __var_info__6ed4cffd10453646;
extern VarInfo __var_info__9c4706ceb88bb6a4;
extern VarInfo __var_info__fcd0fedcec5e3016;
extern VarInfo __var_info__8f62646d23f25b99;
extern VarInfo __var_info__21a610d8b307aab7;
extern VarInfo __var_info__635ac63675961b5b;
extern VarInfo __var_info__44f160a6dbf6c463;
extern VarInfo __var_info__3313f7e77d463c1d;
extern VarInfo __var_info__d95efe75d53d785;
extern VarInfo __var_info__b585c093a8729bb5;
extern VarInfo __var_info__bcee3052ac4d0412;
extern VarInfo __var_info__2f6c89bb2174e0d4;
extern VarInfo __var_info__7adb14e36229366e;
extern VarInfo __var_info__38c0b8b3a0035f4b;
extern VarInfo __var_info__70eaf9dc12ebfe56;
extern VarInfo __var_info__82bdb4937d781651;
extern VarInfo __var_info__a6c5a0d476401dcf;
extern VarInfo __var_info__803a9565358b9c2b;
extern VarInfo __var_info__8a7f1eb665490d1a;
extern VarInfo __var_info__9387c6938b8fa5e7;
extern VarInfo __var_info__692a2ee8bd34e45e;
extern VarInfo __var_info__2aa1ee74f855f5b4;
extern VarInfo __var_info__166357f10c39f6fc;
extern VarInfo __var_info__13e0e5f72f8217fb;
extern VarInfo __var_info__3b849f4fb88473bb;
extern VarInfo __var_info__f1bb59011ce51e2a;
extern VarInfo __var_info__ba19715e054fd353;
extern VarInfo __var_info__160e1334ac8f8bfc;
extern VarInfo __var_info__ac390a5ffb883c3b;
extern VarInfo __var_info__87544b21d0bdc68e;
extern VarInfo __var_info__467b3460de5445fe;
extern VarInfo __var_info__3999c8ecc927783;
extern VarInfo __var_info__7e590097bace95e2;
extern VarInfo __var_info__e1490f83f62810a2;
extern VarInfo __var_info__2f5a09d014210edd;
extern VarInfo __var_info__89db2eaecd06de6f;
extern VarInfo __var_info__fe090ab26f161170;
extern VarInfo __var_info__b015b3f7761553d5;
extern VarInfo __var_info__ec7be13e5039487e;
extern VarInfo __var_info__9a7ac69391983ce7;
extern VarInfo __var_info__999aa82fd12dcf8;
extern VarInfo __var_info__c851ce6ee7f3502b;
extern VarInfo __var_info__9750b1938f1ae438;
extern VarInfo __var_info__974fb1938f193138;
extern VarInfo __var_info__974eb1938f177e38;
extern VarInfo __var_info__10fa045a7f20e7c5;
extern VarInfo __var_info__f881ff76a48e7a59;
extern VarInfo __var_info__5992ea8a5e268051;
extern VarInfo __var_info__2a5ff066b4c53561;
extern VarInfo __var_info__eb17a67d73d1450d;
extern VarInfo __var_info__6ac4f424293494e8;
extern VarInfo __var_info__9c27b1a81ccde81;
extern VarInfo __var_info__f3484371ddf5f3ea;
extern VarInfo __var_info__671c1e58b35b487f;
extern VarInfo __var_info__1a6629989f7a578b;
extern VarInfo __var_info__b369ba5a9fd3f6bf;
extern VarInfo __var_info__7cb15833a89cbb44;
extern VarInfo __var_info__50599c4cfbbbf1a3;
extern VarInfo __var_info__4c448f3c87aebe6b;
extern VarInfo __var_info__786ac2937496a01b;
extern VarInfo __var_info__ee20777da5e5bc33;
extern VarInfo __var_info__ae2e6c616c88a62b;
extern VarInfo __var_info__35446d2c24c68711;
extern VarInfo __var_info__436fe705f6119254;
extern VarInfo __var_info__7f85c2937ae32f1b;
extern VarInfo __var_info__1f78119362cddb74;
extern VarInfo __var_info__c356f39314340551;
extern VarInfo __var_info__643af750008e451d;
extern VarInfo __var_info__4782749160e23df2;
extern VarInfo __var_info__c86ad23f08ba4d61;
extern VarInfo __var_info__af15ebc7492e3415;
extern VarInfo __var_info__101482393405a9cf;
extern VarInfo __var_info__2d7207ab2cb8029;
extern VarInfo __var_info__6c71ddec41aaaf17;
extern VarInfo __var_info__ab31c0bc9573a50e;
extern VarInfo __var_info__8edfb2a132d8a1a4;
extern VarInfo __var_info__b3b4b1a5de3de0c7;
extern VarInfo __var_info__5ccfb39084cfbf8d;
extern VarInfo __var_info__ebde9918bcd35380;
extern VarInfo __var_info__c66a4f95fccc7a5f;
extern VarInfo __var_info__7e3ddf73033bf97a;
extern VarInfo __var_info__7c4e6040573c64f1;
extern VarInfo __var_info__9a9fa473c4c4537;
extern VarInfo __var_info__76a4927d5ad21a80;
extern VarInfo __var_info__ce0b180e77df9497;
extern VarInfo __var_info__296197f91d6017ce;
extern VarInfo __var_info__f932b717d4c7396f;
extern VarInfo __var_info__26ce727e80b11f26;
extern VarInfo __var_info__897887e675eea03;
extern VarInfo __var_info__1cbe4220792916dd;
extern VarInfo __var_info__4c112679d4ccf5c5;
extern VarInfo __var_info__2f352a33ffa6381b;
extern VarInfo __var_info__2eae795a7a746ebf;
extern VarInfo __var_info__bef5101cdf9a5dbf;
extern VarInfo __var_info__61eb02e4f38a6b6b;
extern VarInfo __var_info__7daf7a9574198a34;
extern VarInfo __var_info__272782625f3d78fb;
extern VarInfo __var_info__e967adacac4d90ea;
extern VarInfo __var_info__fa54b8acba97e420;
extern VarInfo __var_info__a62ad4c90f9a63b4;
extern VarInfo __var_info__7ae2a7cee8a60ea0;
extern VarInfo __var_info__f52d5a4ff22c91d4;
extern VarInfo __var_info__14c4e8e8cf0a8d5e;
extern VarInfo __var_info__3a32f1919c6974a7;
extern VarInfo __var_info__a3cca9e2fe372e8;
extern VarInfo __var_info__8e76351644848af9;
extern VarInfo __var_info__5306041ae3eb1c95;
extern VarInfo __var_info__3701ad32a2e980bd;
extern VarInfo __var_info__d23dc2afc10a292f;
extern VarInfo __var_info__4867314de259a5d4;
extern VarInfo __var_info__2ea65eb342ffd5a5;
extern VarInfo __var_info__2a0e6f03caa374d5;
extern VarInfo __var_info__5cd17e03f5c3b2e2;
extern VarInfo __var_info__fca90490d3742201;
extern VarInfo __var_info__f1126134ff63ac68;
extern VarInfo __var_info__83095408592944ee;
extern VarInfo __var_info__386a7b1908f8e555;
extern VarInfo __var_info__12dc8ce7e8dfa9e7;
extern VarInfo __var_info__72a9aeddddd27944;
extern VarInfo __var_info__32b8daea535d33ca;
extern VarInfo __var_info__a495b0d20dba966;
extern VarInfo __var_info__6f012e0848275032;
extern VarInfo __var_info__c80a310e9eee42b2;
extern VarInfo __var_info__957502d985d0a51e;
extern VarInfo __var_info__c36a956b02f0bd81;
extern VarInfo __var_info__f438490ec477807a;
extern VarInfo __var_info__cb28510ea1770cd5;
extern VarInfo __var_info__f1a504e35780396;
extern VarInfo __var_info__ce33340ea3c80d09;
extern VarInfo __var_info__b002ed49a7402cca;
extern VarInfo __var_info__d3e82823af7f9dfa;
extern VarInfo __var_info__9e29fca33a75035e;
extern VarInfo __var_info__a8fb09c47774e0ca;
extern VarInfo __var_info__49a8569ce2a262c6;
extern VarInfo __var_info__4976569ce24d6cc6;
extern VarInfo __var_info__4975569ce24bb9c6;
extern VarInfo __var_info__497c569ce2579ec6;
extern VarInfo __var_info__d6c50d23b19990dc;
extern VarInfo __var_info__50a03da696db849e;
extern VarInfo __var_info__d6b70d23b181c6dc;
extern VarInfo __var_info__d6b60d23b18013dc;
extern VarInfo __var_info__d6b10d23b17794dc;
extern VarInfo __var_info__4d3a3ba693f85838;
extern VarInfo __var_info__d6bd0d23b18bf8dc;
extern VarInfo __var_info__21de1d23f167720b;
extern VarInfo __var_info__9fa05fd47bc43d08;
extern VarInfo __var_info__656c120dc9a2aef4;
extern VarInfo __var_info__7f643013a6867f4e;
extern VarInfo __var_info__6dfe272358c0b68e;
extern VarInfo __var_info__a75d400fcf1ac48d;
extern VarInfo __var_info__a7933d0fcf768174;
extern VarInfo __var_info__a7933e0fcf768327;
extern VarInfo __var_info__a7933b0fcf767e0e;
extern VarInfo __var_info__a75f390fcf1e1ea8;
extern VarInfo __var_info__a793370fcf767742;
extern VarInfo __var_info__16126a94c04a3eb8;
extern VarInfo __var_info__cb55a8c2bdcfef4a;
extern VarInfo __var_info__398b4bb06ca43c29;
extern VarInfo __var_info__f0a33a0ec16ccd3b;
extern VarInfo __var_info__d5257726964a265a;
extern VarInfo __var_info__10f34a2721b188d1;
extern VarInfo __var_info__7f629486178ea4ec;
extern VarInfo __var_info__42c1603b6c94395a;
extern VarInfo __var_info__d63e3c2b472f6afc;
extern VarInfo __var_info__c66fe0f90d662c9a;
extern VarInfo __var_info__d217eabc35e15240;
extern VarInfo __var_info__acb2511d42cd275a;
extern VarInfo __var_info__8734491d22dac2c2;
extern VarInfo __var_info__5ce990d6dba720;
extern VarInfo __var_info__2fa4ec6edbdc6506;
extern VarInfo __var_info__88fe62227a70b5;
extern VarInfo __var_info__dc86fe96e4943ae9;
extern VarInfo __var_info__a59fe12bf7da1e5d;
extern VarInfo __var_info__846730209efa6c3d;
extern VarInfo __var_info__693a03bc37b663ba;
extern VarInfo __var_info__f7af45efabdd6cb8;
extern VarInfo __var_info__d5bee88633a8cbf1;
extern VarInfo __var_info__370de50761e751e3;
extern VarInfo __var_info__e1790590bc5adbb4;
extern VarInfo __var_info__24493b73c1a587f6;
extern VarInfo __var_info__4decd3d4848a0dd4;
extern VarInfo __var_info__faed89e74efe7344;
extern VarInfo __var_info__38b139fdb7772afd;
extern VarInfo __var_info__eb56f390c4757c1e;
extern VarInfo __var_info__a374731f53db39d3;
extern VarInfo __var_info__c18354169bb7fc25;
extern VarInfo __var_info__86930a1a307091eb;
extern VarInfo __var_info__2e5a1b3f9d87c44;
extern VarInfo __var_info__2b1246e5ca993114;
extern VarInfo __var_info__56f2ef6620de8473;
extern VarInfo __var_info__468810d49a88a600;
extern VarInfo __var_info__7769f10ab0f45217;
extern VarInfo __var_info__b8d35c3131c27faa;
extern VarInfo __var_info__191c5367d280530f;
extern VarInfo __var_info__5b233a28c6df1f6b;
extern VarInfo __var_info__2ad4397cfa3f531c;
extern VarInfo __var_info__e27e49cbdfa00d8b;
extern VarInfo __var_info__cd50256ede96774b;
extern VarInfo __var_info__fb74d0d62aae33d6;
extern VarInfo __var_info__4aad7ed7221edc9a;
extern VarInfo __var_info__1c89260483b73f3f;
extern VarInfo __var_info__83b88c7175e5d5be;
extern VarInfo __var_info__803d46f0c4b3f542;
extern VarInfo __var_info__c4c9fd044dc6d2a1;
extern VarInfo __var_info__e549f390bff3b71e;
extern VarInfo __var_info__1ca38c3ff38d64c5;
extern VarInfo __var_info__2acca9c5082a58e2;
extern VarInfo __var_info__fe31eadc179983e0;
extern VarInfo __var_info__e8140890c1cdefcd;
extern VarInfo __var_info__e8170890c1d308cd;
extern VarInfo __var_info__aeb98b43c7c4af3e;
extern VarInfo __var_info__e8160890c1d155cd;
extern VarInfo __var_info__b0cbc6ade9043d6f;
extern VarInfo __var_info__c7c780c06cfeb83e;
extern VarInfo __var_info__145be27a5ca6ba4;
extern VarInfo __var_info__8d1a4966ce98ac8e;
extern VarInfo __var_info__13e00cd547d6eaf4;
extern VarInfo __var_info__23bdf6dc3a14e310;
extern VarInfo __var_info__2a72f152c0798e5e;
extern VarInfo __var_info__2ea01333cb9db78d;
extern VarInfo __var_info__a6b8d2bfcced0db2;
extern VarInfo __var_info__4deab3e33f6d70cb;
extern VarInfo __var_info__8c0367216b88798e;
extern VarInfo __var_info__93646c3271e1e430;
extern VarInfo __var_info__7d1619dd42554020;
extern VarInfo __var_info__2cbf753431d7218c;
extern VarInfo __var_info__d878398b6c16b20b;
extern VarInfo __var_info__589ce29d23901314;
extern VarInfo __var_info__651358111ee6854e;
extern VarInfo __var_info__3d59f7910a84c3ea;
extern VarInfo __var_info__597a678c9b9b8df7;
extern VarInfo __var_info__c7b5d73badb783a0;
extern VarInfo __var_info__52cd40d12d47b3b0;
extern VarInfo __var_info__847a1c1872d021a4;
extern VarInfo __var_info__27c83f576817775a;
extern VarInfo __var_info__4cdbd1bf04b48049;
extern VarInfo __var_info__365cf791046b2eea;
extern VarInfo __var_info__f5c2f70c6be986b;
extern VarInfo __var_info__8e34a0c91746f8bd;
extern VarInfo __var_info__3beb4d70ecef968e;
extern VarInfo __var_info__675adeddb415795e;
extern VarInfo __var_info__62f3513fab3d4a5a;
extern VarInfo __var_info__73447c30ce0cf9eb;
extern VarInfo __var_info__284bdc38aee4748a;
extern VarInfo __var_info__5f19ef07896f8876;
extern VarInfo __var_info__ae988f089f74d174;
extern VarInfo __var_info__1e2e69c27116da52;
extern VarInfo __var_info__d6519e654cbd73c0;
extern VarInfo __var_info__3059cdcfc155a73d;
extern VarInfo __var_info__85f542609afcf2cf;
extern VarInfo __var_info__f9c5abe21fc5d852;
extern VarInfo __var_info__bcd8ae93d7ca8bbc;
extern VarInfo __var_info__cdceb2b3bebb0555;
extern VarInfo __var_info__8e7904608f35b403;
extern VarInfo __var_info__475555cc9038a4b0;
extern VarInfo __var_info__8ed3193543added3;
extern VarInfo __var_info__cb473bd4f767da;
extern VarInfo __var_info__2ef9dca1782d67af;
extern VarInfo __var_info__4ecd1d3535af0bc7;
extern VarInfo __var_info__6731bf006fb58b05;
extern VarInfo __var_info__a05a0af5cd043198;
extern VarInfo __var_info__9a4f19b9e8272eee;
extern VarInfo __var_info__413c5f0643e13ce1;
extern VarInfo __var_info__3a92977644662f49;
extern VarInfo __var_info__3a919376443642ed;
extern VarInfo __var_info__71a2747673956140;
extern VarInfo __var_info__5de98f0381d60e6c;
extern VarInfo __var_info__80fc15845a773f4f;
extern VarInfo __var_info__49fa2e6b9b70b307;
extern VarInfo __var_info__8b5b9c4e21fa83ad;
extern VarInfo __var_info__f375c7ef67e58e6d;
extern VarInfo __var_info__287a0715f78917e9;
extern VarInfo __var_info__d80d7414aa67f315;
extern VarInfo __var_info__5b2fed79d758d0f1;
extern VarInfo __var_info__aa6126f5d55f04da;
extern VarInfo __var_info__d85d7e96635ac719;
extern VarInfo __var_info__db9294961714f437;
extern VarInfo __var_info__aa5909f5d5513b93;
extern VarInfo __var_info__7a19c2845711c226;
extern VarInfo __var_info__24aecd88667f9400;
extern VarInfo __var_info__f6b2a899679828d6;
extern VarInfo __var_info__1b3939fed1892a83;
extern VarInfo __var_info__16554db2d8632df8;
extern VarInfo __var_info__45e41b3eae084074;
extern VarInfo __var_info__a6c714e9a856ff1f;
extern VarInfo __var_info__bb47b6090bd39977;
extern VarInfo __var_info__bb47b5090bd397c4;
extern VarInfo __var_info__bb47b4090bd39611;
extern VarInfo __var_info__95fdacc6cece9bea;
extern VarInfo __var_info__acba70d169316b21;
extern VarInfo __var_info__aca86dd16912d008;
extern VarInfo __var_info__aca86ed16912d1bb;
extern VarInfo __var_info__aca873d16912da3a;
extern VarInfo __var_info__acbc71d16934d2d4;
extern VarInfo __var_info__aca867d16912c5d6;
extern VarInfo __var_info__77edb2c6b5b5e71c;
extern VarInfo __var_info__59d832b1080800dc;
extern VarInfo __var_info__b2930cd0a5f1e99e;
extern VarInfo __var_info__b99ccfc608b7db78;
extern VarInfo __var_info__9bb35987f1eb8cd;
extern VarInfo __var_info__dacf0d202c83b981;
extern VarInfo __var_info__9c935987f3682cd;
extern VarInfo __var_info__9c835987f34cfcd;
extern VarInfo __var_info__9cf35987f40b4cd;
extern VarInfo __var_info__e5010b20352d311b;
extern VarInfo __var_info__9c335987f2c50cd;
extern VarInfo __var_info__c0ff2b391e84edd7;
extern VarInfo __var_info__5488550ebf009eb9;
extern VarInfo __var_info__a5c9b7a434a89ff6;
extern VarInfo __var_info__88520af5b85ef246;
extern VarInfo __var_info__fd74f3a77a74312c;
extern VarInfo __var_info__c76212a74c9c409b;
extern VarInfo __var_info__c7b3ec7a44b67de2;
extern VarInfo __var_info__331a9f592d42d862;
extern VarInfo __var_info__c4ff5e8208cfd577;
extern VarInfo __var_info__3b506292e4177310;
extern VarInfo __var_info__8f6726f5beaa2855;
extern VarInfo __var_info__887f1af5b8b42df1;
extern VarInfo __var_info__f95f7a9a754370e7;
extern VarInfo __var_info__4f07c4b2a0aaef3a;
extern VarInfo __var_info__885f0ef5b8809cb6;
extern VarInfo __var_info__a626ee38b2717637;
extern VarInfo __var_info__d278e28ef6c5c687;
extern VarInfo __var_info__5dee970381de9b04;
extern VarInfo __var_info__b986bd63181b15f9;
extern VarInfo __var_info__86d47ccb4ecd69b9;
extern VarInfo __var_info__f7a746b99b689dc5;
extern VarInfo __var_info__9cf720f5ca17d72d;
extern VarInfo __var_info__bd4d2ae4499ea19e;
extern VarInfo __var_info__8cdb542b362e08ac;
extern VarInfo __var_info__f3d573ed5c962676;
extern VarInfo __var_info__e574af1cf106902a;
extern VarInfo __var_info__449cd0956c95ce45;
extern VarInfo __var_info__fce64454ace4dd1c;
extern VarInfo __var_info__11d5116a3cf8263;
extern VarInfo __var_info__5b3e0a7e5766c128;
extern VarInfo __var_info__6933b88d894a9c35;
extern VarInfo __var_info__6729923d92272a00;
extern VarInfo __var_info__a27f172ef37a5598;
extern VarInfo __var_info__742d9180a8f0f0;
extern VarInfo __var_info__108bea9eac4569ad;
extern VarInfo __var_info__fd9ecb1e48a60e70;
extern VarInfo __var_info__f87786ae99453a15;
extern VarInfo __var_info__300bd8c1ea475063;
extern VarInfo __var_info__88351cf5b828038a;
extern VarInfo __var_info__4329e27e97d37b3d;
extern VarInfo __var_info__a0382d3adcb1e589;
extern VarInfo __var_info__9cfe0df5ca1dd592;
extern VarInfo __var_info__b1cca641feb61bfe;
extern VarInfo __var_info__c5f8462942c29033;
extern VarInfo __var_info__7798e3f5aa58955d;
extern VarInfo __var_info__7798e0f5aa589044;
extern VarInfo __var_info__7798e1f5aa5891f7;
extern VarInfo __var_info__342f1abedb39c4ab;
extern VarInfo __var_info__f4e0c56cf7753e4;
extern VarInfo __var_info__c4fea7a714ae6c3b;
extern VarInfo __var_info__f700ffddc487028b;
extern VarInfo __var_info__1d56b96cd0a31a22;
extern VarInfo __var_info__f7f386a7402bf833;
extern VarInfo __var_info__93c0fa74b053a3e6;
extern VarInfo __var_info__97bc82b929aad7f7;
extern VarInfo __var_info__502a5e580a66b45f;
extern VarInfo __var_info__24887958bbe4c4c5;
extern VarInfo __var_info__53109ea51ee04886;
extern VarInfo __var_info__3e80de048c511a25;
extern VarInfo __var_info__c7a92f873c085df4;
extern VarInfo __var_info__a1883820b5d0cb9c;
extern VarInfo __var_info__aaaafdf5d5bcba6c;
extern VarInfo __var_info__9caa07bf3cd8a75a;
extern VarInfo __var_info__bc7e7ece5c20ff7c;
extern VarInfo __var_info__a48159ce47b981b2;
extern VarInfo __var_info__2de98b8e611d142d;
extern VarInfo __var_info__aab11af5d5c15761;
extern VarInfo __var_info__5b7dba98e5a27698;
extern VarInfo __var_info__8f660ef5be7cfd26;
extern VarInfo __var_info__7bf9499204334125;
extern VarInfo __var_info__80abb2744c03bd72;
extern VarInfo __var_info__40bb9ff4a94952a5;
extern VarInfo __var_info__570a85b93c9e800e;
extern VarInfo __var_info__6e2e95a97eca3ca4;
extern VarInfo __var_info__e55248dd8aafa053;
extern VarInfo __var_info__4d9ea78c4eb0aefd;
extern VarInfo __var_info__7857bee503ecbe2e;
extern VarInfo __var_info__e9672267bb5a55dc;
extern VarInfo __var_info__b919de3205fd207d;
extern VarInfo __var_info__5b062baf8939cab7;
extern VarInfo __var_info__90570fa8b6c1cae8;
extern VarInfo __var_info__836e83dee791f5bc;
extern VarInfo __var_info__ed3905e9344b5799;
extern VarInfo __var_info__d8673e55d20f4a41;

VarInfo __struct_info__1e8db4ddc1444e12_field_0 =  { Type::tPointer, nullptr, nullptr, nullptr, &__type_info__af63eb4c86020609, nullptr, nullptr, nullptr, 0, 0, nullptr, 8204, TypeSize<void *>::size, UINT64_C(0xfb898b509e28d9c8), "__rtti", offsetof(ast::AstVisitor,__rtti), 306 };
TypeInfo * __type_info__404fbd8651779228_arg_types_var_2201614657377291794[1] = { &__type_info__21586ce84f433a21 };
const char * __type_info__404fbd8651779228_arg_names_var_2201614657377291794[1] = { "self" };
VarInfo __struct_info__1e8db4ddc1444e12_field_1 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__af63eb4c86020609, nullptr, (TypeInfo **)__type_info__404fbd8651779228_arg_types_var_2201614657377291794, __type_info__404fbd8651779228_arg_names_var_2201614657377291794, 1, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((void,ast::AstVisitor))>::size, UINT64_C(0x404fbd8651779228), "__finalize", offsetof(ast::AstVisitor,__finalize), 0 };
TypeInfo * __type_info__571af9efe83812fc_arg_types_var_2201614657377291794[2] = { &__type_info__21586ce84f433a21, &__type_info__e57b0f261f47b890 };
const char * __type_info__571af9efe83812fc_arg_names_var_2201614657377291794[2] = { "self", "prog" };
VarInfo __struct_info__1e8db4ddc1444e12_field_2 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__af63eb4c86020609, nullptr, (TypeInfo **)__type_info__571af9efe83812fc_arg_types_var_2201614657377291794, __type_info__571af9efe83812fc_arg_names_var_2201614657377291794, 2, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<Program> const ))>::size, UINT64_C(0x571af9efe83812fc), "preVisitProgram", offsetof(ast::AstVisitor,preVisitProgram), 0 };
TypeInfo * __type_info__ebde9918bcd35380_arg_types_var_2201614657377291794[2] = { &__type_info__21586ce84f433a21, &__type_info__e57b0f261f47b890 };
const char * __type_info__ebde9918bcd35380_arg_names_var_2201614657377291794[2] = { "self", "porg" };
VarInfo __struct_info__1e8db4ddc1444e12_field_3 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__af63eb4c86020609, nullptr, (TypeInfo **)__type_info__ebde9918bcd35380_arg_types_var_2201614657377291794, __type_info__ebde9918bcd35380_arg_names_var_2201614657377291794, 2, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<Program> const ))>::size, UINT64_C(0xebde9918bcd35380), "visitProgram", offsetof(ast::AstVisitor,visitProgram), 0 };
TypeInfo * __type_info__5c630a811e350e10_arg_types_var_2201614657377291794[3] = { &__type_info__21586ce84f433a21, &__type_info__e57b0f261f47b890, &__type_info__e266b5ccef058802 };
const char * __type_info__5c630a811e350e10_arg_names_var_2201614657377291794[3] = { "self", "prog", "mod" };
VarInfo __struct_info__1e8db4ddc1444e12_field_4 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__af63eb4c86020609, nullptr, (TypeInfo **)__type_info__5c630a811e350e10_arg_types_var_2201614657377291794, __type_info__5c630a811e350e10_arg_names_var_2201614657377291794, 3, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<Program> const ,Module * const ))>::size, UINT64_C(0x5c630a811e350e10), "preVisitProgramBody", offsetof(ast::AstVisitor,preVisitProgramBody), 0 };
TypeInfo * __type_info__47802d686ce7346b_arg_types_var_2201614657377291794[2] = { &__type_info__21586ce84f433a21, &__type_info__e266b5ccef058802 };
const char * __type_info__47802d686ce7346b_arg_names_var_2201614657377291794[2] = { "self", "mod" };
VarInfo __struct_info__1e8db4ddc1444e12_field_5 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__af63eb4c86020609, nullptr, (TypeInfo **)__type_info__47802d686ce7346b_arg_types_var_2201614657377291794, __type_info__47802d686ce7346b_arg_names_var_2201614657377291794, 2, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((void,ast::AstVisitor,Module * const ))>::size, UINT64_C(0x47802d686ce7346b), "preVisitModule", offsetof(ast::AstVisitor,preVisitModule), 0 };
TypeInfo * __type_info__5ccfb39084cfbf8d_arg_types_var_2201614657377291794[2] = { &__type_info__21586ce84f433a21, &__type_info__e266b5ccef058802 };
const char * __type_info__5ccfb39084cfbf8d_arg_names_var_2201614657377291794[2] = { "self", "mod" };
VarInfo __struct_info__1e8db4ddc1444e12_field_6 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__af63eb4c86020609, nullptr, (TypeInfo **)__type_info__5ccfb39084cfbf8d_arg_types_var_2201614657377291794, __type_info__5ccfb39084cfbf8d_arg_names_var_2201614657377291794, 2, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((void,ast::AstVisitor,Module * const ))>::size, UINT64_C(0x5ccfb39084cfbf8d), "visitModule", offsetof(ast::AstVisitor,visitModule), 0 };
TypeInfo * __type_info__7c1c3f2d00ff5aa8_arg_types_var_2201614657377291794[2] = { &__type_info__21586ce84f433a21, &__type_info__3b037c8d587730b0 };
const char * __type_info__7c1c3f2d00ff5aa8_arg_names_var_2201614657377291794[2] = { "self", "expr" };
VarInfo __struct_info__1e8db4ddc1444e12_field_7 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__af63eb4c86020609, nullptr, (TypeInfo **)__type_info__7c1c3f2d00ff5aa8_arg_types_var_2201614657377291794, __type_info__7c1c3f2d00ff5aa8_arg_names_var_2201614657377291794, 2, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<ExprTypeDecl> const ))>::size, UINT64_C(0x7c1c3f2d00ff5aa8), "preVisitExprTypeDecl", offsetof(ast::AstVisitor,preVisitExprTypeDecl), 0 };
TypeInfo * __type_info__ae2e6c616c88a62b_arg_types_var_2201614657377291794[2] = { &__type_info__21586ce84f433a21, &__type_info__3b037c8d587730b0 };
const char * __type_info__ae2e6c616c88a62b_arg_names_var_2201614657377291794[2] = { "self", "expr" };
VarInfo __struct_info__1e8db4ddc1444e12_field_8 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__6636442e03391ebf, nullptr, (TypeInfo **)__type_info__ae2e6c616c88a62b_arg_types_var_2201614657377291794, __type_info__ae2e6c616c88a62b_arg_names_var_2201614657377291794, 2, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((smart_ptr_raw<Expression>,ast::AstVisitor,smart_ptr_raw<ExprTypeDecl> const ))>::size, UINT64_C(0xae2e6c616c88a62b), "visitExprTypeDecl", offsetof(ast::AstVisitor,visitExprTypeDecl), 0 };
TypeInfo * __type_info__d80a645b6da8c535_arg_types_var_2201614657377291794[2] = { &__type_info__21586ce84f433a21, &__type_info__defb2f7795e0cf8c };
const char * __type_info__d80a645b6da8c535_arg_names_var_2201614657377291794[2] = { "self", "typ" };
VarInfo __struct_info__1e8db4ddc1444e12_field_9 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__af63eb4c86020609, nullptr, (TypeInfo **)__type_info__d80a645b6da8c535_arg_types_var_2201614657377291794, __type_info__d80a645b6da8c535_arg_names_var_2201614657377291794, 2, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<TypeDecl> const ))>::size, UINT64_C(0xd80a645b6da8c535), "preVisitTypeDecl", offsetof(ast::AstVisitor,preVisitTypeDecl), 0 };
TypeInfo * __type_info__7c4e6040573c64f1_arg_types_var_2201614657377291794[2] = { &__type_info__21586ce84f433a21, &__type_info__defb2f7795e0cf8c };
const char * __type_info__7c4e6040573c64f1_arg_names_var_2201614657377291794[2] = { "self", "typ" };
VarInfo __struct_info__1e8db4ddc1444e12_field_10 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__afcf203e0d7d50d, nullptr, (TypeInfo **)__type_info__7c4e6040573c64f1_arg_types_var_2201614657377291794, __type_info__7c4e6040573c64f1_arg_names_var_2201614657377291794, 2, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((smart_ptr_raw<TypeDecl>,ast::AstVisitor,smart_ptr_raw<TypeDecl> const ))>::size, UINT64_C(0x7c4e6040573c64f1), "visitTypeDecl", offsetof(ast::AstVisitor,visitTypeDecl), 0 };
TypeInfo * __type_info__dfaf2e5a156cac5b_arg_types_var_2201614657377291794[3] = { &__type_info__21586ce84f433a21, &__type_info__defb2f7795e0cf8c, &__type_info__624d371c76b25aa4 };
const char * __type_info__dfaf2e5a156cac5b_arg_names_var_2201614657377291794[3] = { "self", "typ", "name" };
VarInfo __struct_info__1e8db4ddc1444e12_field_11 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__af63eb4c86020609, nullptr, (TypeInfo **)__type_info__dfaf2e5a156cac5b_arg_types_var_2201614657377291794, __type_info__dfaf2e5a156cac5b_arg_names_var_2201614657377291794, 3, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<TypeDecl> const ,das::string const ))>::size, UINT64_C(0xdfaf2e5a156cac5b), "preVisitAlias", offsetof(ast::AstVisitor,preVisitAlias), 0 };
TypeInfo * __type_info__36c4426c738ddad_arg_types_var_2201614657377291794[3] = { &__type_info__21586ce84f433a21, &__type_info__defb2f7795e0cf8c, &__type_info__624d371c76b25aa4 };
const char * __type_info__36c4426c738ddad_arg_names_var_2201614657377291794[3] = { "self", "typ", "name" };
VarInfo __struct_info__1e8db4ddc1444e12_field_12 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__afcf203e0d7d50d, nullptr, (TypeInfo **)__type_info__36c4426c738ddad_arg_types_var_2201614657377291794, __type_info__36c4426c738ddad_arg_names_var_2201614657377291794, 3, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((smart_ptr_raw<TypeDecl>,ast::AstVisitor,smart_ptr_raw<TypeDecl> const ,das::string const ))>::size, UINT64_C(0x36c4426c738ddad), "visitAlias", offsetof(ast::AstVisitor,visitAlias), 0 };
TypeInfo * __type_info__7c71c3b025ab6c55_arg_types_var_2201614657377291794[2] = { &__type_info__21586ce84f433a21, &__type_info__7c61f7ae88617bb2 };
const char * __type_info__7c71c3b025ab6c55_arg_names_var_2201614657377291794[2] = { "self", "arg" };
VarInfo __struct_info__1e8db4ddc1444e12_field_13 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__af63df4c8601f1a5, nullptr, (TypeInfo **)__type_info__7c71c3b025ab6c55_arg_types_var_2201614657377291794, __type_info__7c71c3b025ab6c55_arg_names_var_2201614657377291794, 2, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((bool,ast::AstVisitor,Enumeration * const ))>::size, UINT64_C(0x7c71c3b025ab6c55), "canVisitEnumeration", offsetof(ast::AstVisitor,canVisitEnumeration), 0 };
TypeInfo * __type_info__139f4dd326162ccb_arg_types_var_2201614657377291794[2] = { &__type_info__21586ce84f433a21, &__type_info__586f0da79a6e613d };
const char * __type_info__139f4dd326162ccb_arg_names_var_2201614657377291794[2] = { "self", "enu" };
VarInfo __struct_info__1e8db4ddc1444e12_field_14 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__af63eb4c86020609, nullptr, (TypeInfo **)__type_info__139f4dd326162ccb_arg_types_var_2201614657377291794, __type_info__139f4dd326162ccb_arg_names_var_2201614657377291794, 2, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<Enumeration> const ))>::size, UINT64_C(0x139f4dd326162ccb), "preVisitEnumeration", offsetof(ast::AstVisitor,preVisitEnumeration), 0 };
TypeInfo * __type_info__7c24884234a37391_arg_types_var_2201614657377291794[5] = { &__type_info__21586ce84f433a21, &__type_info__586f0da79a6e613d, &__type_info__624d371c76b25aa4, &__type_info__98064c57b4bcca5a, &__type_info__af81fe4c86352052 };
const char * __type_info__7c24884234a37391_arg_names_var_2201614657377291794[5] = { "self", "enu", "name", "value", "last" };
VarInfo __struct_info__1e8db4ddc1444e12_field_15 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__af63eb4c86020609, nullptr, (TypeInfo **)__type_info__7c24884234a37391_arg_types_var_2201614657377291794, __type_info__7c24884234a37391_arg_names_var_2201614657377291794, 5, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<Enumeration> const ,das::string const ,smart_ptr_raw<Expression> const ,bool))>::size, UINT64_C(0x7c24884234a37391), "preVisitEnumerationValue", offsetof(ast::AstVisitor,preVisitEnumerationValue), 0 };
TypeInfo * __type_info__eaf6264c8c2101ff_arg_types_var_2201614657377291794[5] = { &__type_info__21586ce84f433a21, &__type_info__586f0da79a6e613d, &__type_info__624d371c76b25aa4, &__type_info__98064c57b4bcca5a, &__type_info__af81fe4c86352052 };
const char * __type_info__eaf6264c8c2101ff_arg_names_var_2201614657377291794[5] = { "self", "enu", "name", "value", "last" };
VarInfo __struct_info__1e8db4ddc1444e12_field_16 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__6636442e03391ebf, nullptr, (TypeInfo **)__type_info__eaf6264c8c2101ff_arg_types_var_2201614657377291794, __type_info__eaf6264c8c2101ff_arg_names_var_2201614657377291794, 5, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((smart_ptr_raw<Expression>,ast::AstVisitor,smart_ptr_raw<Enumeration> const ,das::string const ,smart_ptr_raw<Expression> const ,bool))>::size, UINT64_C(0xeaf6264c8c2101ff), "visitEnumerationValue", offsetof(ast::AstVisitor,visitEnumerationValue), 0 };
TypeInfo * __type_info__6cad416db0286952_arg_types_var_2201614657377291794[2] = { &__type_info__21586ce84f433a21, &__type_info__586f0da79a6e613d };
const char * __type_info__6cad416db0286952_arg_names_var_2201614657377291794[2] = { "self", "enu" };
VarInfo __struct_info__1e8db4ddc1444e12_field_17 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__e4765bc563f255e, nullptr, (TypeInfo **)__type_info__6cad416db0286952_arg_types_var_2201614657377291794, __type_info__6cad416db0286952_arg_names_var_2201614657377291794, 2, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((smart_ptr_raw<Enumeration>,ast::AstVisitor,smart_ptr_raw<Enumeration> const ))>::size, UINT64_C(0x6cad416db0286952), "visitEnumeration", offsetof(ast::AstVisitor,visitEnumeration), 0 };
TypeInfo * __type_info__b9386f8f015bfb1e_arg_types_var_2201614657377291794[2] = { &__type_info__21586ce84f433a21, &__type_info__f9220d94c6b964b5 };
const char * __type_info__b9386f8f015bfb1e_arg_names_var_2201614657377291794[2] = { "self", "arg" };
VarInfo __struct_info__1e8db4ddc1444e12_field_18 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__af63df4c8601f1a5, nullptr, (TypeInfo **)__type_info__b9386f8f015bfb1e_arg_types_var_2201614657377291794, __type_info__b9386f8f015bfb1e_arg_names_var_2201614657377291794, 2, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((bool,ast::AstVisitor,Structure * const ))>::size, UINT64_C(0xb9386f8f015bfb1e), "canVisitStructure", offsetof(ast::AstVisitor,canVisitStructure), 0 };
TypeInfo * __type_info__41fcc1ce9520d068_arg_types_var_2201614657377291794[2] = { &__type_info__21586ce84f433a21, &__type_info__d6b8ed05d16e9f27 };
const char * __type_info__41fcc1ce9520d068_arg_names_var_2201614657377291794[2] = { "self", "str" };
VarInfo __struct_info__1e8db4ddc1444e12_field_19 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__af63eb4c86020609, nullptr, (TypeInfo **)__type_info__41fcc1ce9520d068_arg_types_var_2201614657377291794, __type_info__41fcc1ce9520d068_arg_names_var_2201614657377291794, 2, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<Structure> const ))>::size, UINT64_C(0x41fcc1ce9520d068), "preVisitStructure", offsetof(ast::AstVisitor,preVisitStructure), 0 };
TypeInfo * __type_info__b391f5eabc24c0ed_arg_types_var_2201614657377291794[4] = { &__type_info__21586ce84f433a21, &__type_info__d6b8ed05d16e9f27, &__type_info__29c0090cdbf7525c, &__type_info__af81fe4c86352052 };
const char * __type_info__b391f5eabc24c0ed_arg_names_var_2201614657377291794[4] = { "self", "str", "decl", "last" };
VarInfo __struct_info__1e8db4ddc1444e12_field_20 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__af63eb4c86020609, nullptr, (TypeInfo **)__type_info__b391f5eabc24c0ed_arg_types_var_2201614657377291794, __type_info__b391f5eabc24c0ed_arg_names_var_2201614657377291794, 4, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<Structure> const ,Structure::FieldDeclaration const ,bool))>::size, UINT64_C(0xb391f5eabc24c0ed), "preVisitStructureField", offsetof(ast::AstVisitor,preVisitStructureField), 0 };
TypeInfo * __type_info__8941a79636fd28ed_arg_types_var_2201614657377291794[2] = { &__type_info__21586ce84f433a21, &__type_info__d6b8ed05d16e9f27 };
const char * __type_info__8941a79636fd28ed_arg_names_var_2201614657377291794[2] = { "self", "st" };
VarInfo __struct_info__1e8db4ddc1444e12_field_21 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__af63df4c8601f1a5, nullptr, (TypeInfo **)__type_info__8941a79636fd28ed_arg_types_var_2201614657377291794, __type_info__8941a79636fd28ed_arg_names_var_2201614657377291794, 2, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((bool,ast::AstVisitor,smart_ptr_raw<Structure> const ))>::size, UINT64_C(0x8941a79636fd28ed), "canVisitStructureFieldInit", offsetof(ast::AstVisitor,canVisitStructureFieldInit), 0 };
TypeInfo * __type_info__7e3ddf73033bf97a_arg_types_var_2201614657377291794[4] = { &__type_info__21586ce84f433a21, &__type_info__d6b8ed05d16e9f27, &__type_info__29c0090cdbf7525c, &__type_info__af81fe4c86352052 };
const char * __type_info__7e3ddf73033bf97a_arg_names_var_2201614657377291794[4] = { "self", "str", "decl", "last" };
VarInfo __struct_info__1e8db4ddc1444e12_field_22 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__af63eb4c86020609, nullptr, (TypeInfo **)__type_info__7e3ddf73033bf97a_arg_types_var_2201614657377291794, __type_info__7e3ddf73033bf97a_arg_names_var_2201614657377291794, 4, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<Structure> const ,Structure::FieldDeclaration const ,bool))>::size, UINT64_C(0x7e3ddf73033bf97a), "visitStructureField", offsetof(ast::AstVisitor,visitStructureField), 0 };
TypeInfo * __type_info__c66a4f95fccc7a5f_arg_types_var_2201614657377291794[2] = { &__type_info__21586ce84f433a21, &__type_info__d6b8ed05d16e9f27 };
const char * __type_info__c66a4f95fccc7a5f_arg_names_var_2201614657377291794[2] = { "self", "str" };
VarInfo __struct_info__1e8db4ddc1444e12_field_23 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__7e104fcf0cd430e4, nullptr, (TypeInfo **)__type_info__c66a4f95fccc7a5f_arg_types_var_2201614657377291794, __type_info__c66a4f95fccc7a5f_arg_names_var_2201614657377291794, 2, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((smart_ptr_raw<Structure>,ast::AstVisitor,smart_ptr_raw<Structure> const ))>::size, UINT64_C(0xc66a4f95fccc7a5f), "visitStructure", offsetof(ast::AstVisitor,visitStructure), 0 };
TypeInfo * __type_info__9bf7e6bedd4bf03b_arg_types_var_2201614657377291794[2] = { &__type_info__21586ce84f433a21, &__type_info__34b7c04894c15d5 };
const char * __type_info__9bf7e6bedd4bf03b_arg_names_var_2201614657377291794[2] = { "self", "fun" };
VarInfo __struct_info__1e8db4ddc1444e12_field_24 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__af63df4c8601f1a5, nullptr, (TypeInfo **)__type_info__9bf7e6bedd4bf03b_arg_types_var_2201614657377291794, __type_info__9bf7e6bedd4bf03b_arg_names_var_2201614657377291794, 2, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((bool,ast::AstVisitor,Function * const ))>::size, UINT64_C(0x9bf7e6bedd4bf03b), "canVisitFunction", offsetof(ast::AstVisitor,canVisitFunction), 0 };
TypeInfo * __type_info__4d2aa20c479aea6a_arg_types_var_2201614657377291794[4] = { &__type_info__21586ce84f433a21, &__type_info__34b7c04894c15d5, &__type_info__a3a6bcfebaf8fcd8, &__type_info__98064c57b4bcca5a };
const char * __type_info__4d2aa20c479aea6a_arg_names_var_2201614657377291794[4] = { "self", "fun", "arg", "value" };
VarInfo __struct_info__1e8db4ddc1444e12_field_25 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__af63df4c8601f1a5, nullptr, (TypeInfo **)__type_info__4d2aa20c479aea6a_arg_types_var_2201614657377291794, __type_info__4d2aa20c479aea6a_arg_names_var_2201614657377291794, 4, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((bool,ast::AstVisitor,Function * const ,smart_ptr_raw<Variable> const ,smart_ptr_raw<Expression> const ))>::size, UINT64_C(0x4d2aa20c479aea6a), "canVisitFunctionArgumentInit", offsetof(ast::AstVisitor,canVisitFunctionArgumentInit), 0 };
TypeInfo * __type_info__9cd5a85ccfeceec9_arg_types_var_2201614657377291794[2] = { &__type_info__21586ce84f433a21, &__type_info__9d10785eb07580e0 };
const char * __type_info__9cd5a85ccfeceec9_arg_names_var_2201614657377291794[2] = { "self", "fun" };
VarInfo __struct_info__1e8db4ddc1444e12_field_26 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__af63eb4c86020609, nullptr, (TypeInfo **)__type_info__9cd5a85ccfeceec9_arg_types_var_2201614657377291794, __type_info__9cd5a85ccfeceec9_arg_names_var_2201614657377291794, 2, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<Function> const ))>::size, UINT64_C(0x9cd5a85ccfeceec9), "preVisitFunction", offsetof(ast::AstVisitor,preVisitFunction), 0 };
TypeInfo * __type_info__c86ad23f08ba4d61_arg_types_var_2201614657377291794[2] = { &__type_info__21586ce84f433a21, &__type_info__9d10785eb07580e0 };
const char * __type_info__c86ad23f08ba4d61_arg_names_var_2201614657377291794[2] = { "self", "fun" };
VarInfo __struct_info__1e8db4ddc1444e12_field_27 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__4cdbed951d30a5d1, nullptr, (TypeInfo **)__type_info__c86ad23f08ba4d61_arg_types_var_2201614657377291794, __type_info__c86ad23f08ba4d61_arg_names_var_2201614657377291794, 2, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((smart_ptr_raw<Function>,ast::AstVisitor,smart_ptr_raw<Function> const ))>::size, UINT64_C(0xc86ad23f08ba4d61), "visitFunction", offsetof(ast::AstVisitor,visitFunction), 0 };
TypeInfo * __type_info__5c978d0137240e4a_arg_types_var_2201614657377291794[4] = { &__type_info__21586ce84f433a21, &__type_info__9d10785eb07580e0, &__type_info__a3a6bcfebaf8fcd8, &__type_info__af81fe4c86352052 };
const char * __type_info__5c978d0137240e4a_arg_names_var_2201614657377291794[4] = { "self", "fun", "arg", "lastArg" };
VarInfo __struct_info__1e8db4ddc1444e12_field_28 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__af63eb4c86020609, nullptr, (TypeInfo **)__type_info__5c978d0137240e4a_arg_types_var_2201614657377291794, __type_info__5c978d0137240e4a_arg_names_var_2201614657377291794, 4, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<Function> const ,smart_ptr_raw<Variable> const ,bool))>::size, UINT64_C(0x5c978d0137240e4a), "preVisitFunctionArgument", offsetof(ast::AstVisitor,preVisitFunctionArgument), 0 };
TypeInfo * __type_info__af15ebc7492e3415_arg_types_var_2201614657377291794[4] = { &__type_info__21586ce84f433a21, &__type_info__9d10785eb07580e0, &__type_info__a3a6bcfebaf8fcd8, &__type_info__af81fe4c86352052 };
const char * __type_info__af15ebc7492e3415_arg_names_var_2201614657377291794[4] = { "self", "fun", "arg", "lastArg" };
VarInfo __struct_info__1e8db4ddc1444e12_field_29 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__4d5fdda373bcfbd1, nullptr, (TypeInfo **)__type_info__af15ebc7492e3415_arg_types_var_2201614657377291794, __type_info__af15ebc7492e3415_arg_names_var_2201614657377291794, 4, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((smart_ptr_raw<Variable>,ast::AstVisitor,smart_ptr_raw<Function> const ,smart_ptr_raw<Variable> const ,bool))>::size, UINT64_C(0xaf15ebc7492e3415), "visitFunctionArgument", offsetof(ast::AstVisitor,visitFunctionArgument), 0 };
TypeInfo * __type_info__eec6a05fd6476150_arg_types_var_2201614657377291794[4] = { &__type_info__21586ce84f433a21, &__type_info__9d10785eb07580e0, &__type_info__a3a6bcfebaf8fcd8, &__type_info__98064c57b4bcca5a };
const char * __type_info__eec6a05fd6476150_arg_names_var_2201614657377291794[4] = { "self", "fun", "arg", "value" };
VarInfo __struct_info__1e8db4ddc1444e12_field_30 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__af63eb4c86020609, nullptr, (TypeInfo **)__type_info__eec6a05fd6476150_arg_types_var_2201614657377291794, __type_info__eec6a05fd6476150_arg_names_var_2201614657377291794, 4, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<Function> const ,smart_ptr_raw<Variable> const ,smart_ptr_raw<Expression> const ))>::size, UINT64_C(0xeec6a05fd6476150), "preVisitFunctionArgumentInit", offsetof(ast::AstVisitor,preVisitFunctionArgumentInit), 0 };
TypeInfo * __type_info__101482393405a9cf_arg_types_var_2201614657377291794[4] = { &__type_info__21586ce84f433a21, &__type_info__9d10785eb07580e0, &__type_info__a3a6bcfebaf8fcd8, &__type_info__98064c57b4bcca5a };
const char * __type_info__101482393405a9cf_arg_names_var_2201614657377291794[4] = { "self", "fun", "arg", "value" };
VarInfo __struct_info__1e8db4ddc1444e12_field_31 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__6636442e03391ebf, nullptr, (TypeInfo **)__type_info__101482393405a9cf_arg_types_var_2201614657377291794, __type_info__101482393405a9cf_arg_names_var_2201614657377291794, 4, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((smart_ptr_raw<Expression>,ast::AstVisitor,smart_ptr_raw<Function> const ,smart_ptr_raw<Variable> const ,smart_ptr_raw<Expression> const ))>::size, UINT64_C(0x101482393405a9cf), "visitFunctionArgumentInit", offsetof(ast::AstVisitor,visitFunctionArgumentInit), 0 };
TypeInfo * __type_info__a3c16915074de26f_arg_types_var_2201614657377291794[3] = { &__type_info__21586ce84f433a21, &__type_info__9d10785eb07580e0, &__type_info__98064c57b4bcca5a };
const char * __type_info__a3c16915074de26f_arg_names_var_2201614657377291794[3] = { "self", "fun", "expr" };
VarInfo __struct_info__1e8db4ddc1444e12_field_32 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__af63eb4c86020609, nullptr, (TypeInfo **)__type_info__a3c16915074de26f_arg_types_var_2201614657377291794, __type_info__a3c16915074de26f_arg_names_var_2201614657377291794, 3, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<Function> const ,smart_ptr_raw<Expression> const ))>::size, UINT64_C(0xa3c16915074de26f), "preVisitFunctionBody", offsetof(ast::AstVisitor,preVisitFunctionBody), 0 };
TypeInfo * __type_info__2d7207ab2cb8029_arg_types_var_2201614657377291794[3] = { &__type_info__21586ce84f433a21, &__type_info__9d10785eb07580e0, &__type_info__98064c57b4bcca5a };
const char * __type_info__2d7207ab2cb8029_arg_names_var_2201614657377291794[3] = { "self", "fun", "expr" };
VarInfo __struct_info__1e8db4ddc1444e12_field_33 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__6636442e03391ebf, nullptr, (TypeInfo **)__type_info__2d7207ab2cb8029_arg_types_var_2201614657377291794, __type_info__2d7207ab2cb8029_arg_names_var_2201614657377291794, 3, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((smart_ptr_raw<Expression>,ast::AstVisitor,smart_ptr_raw<Function> const ,smart_ptr_raw<Expression> const ))>::size, UINT64_C(0x2d7207ab2cb8029), "visitFunctionBody", offsetof(ast::AstVisitor,visitFunctionBody), 0 };
TypeInfo * __type_info__d087bf88dadfc976_arg_types_var_2201614657377291794[2] = { &__type_info__21586ce84f433a21, &__type_info__98064c57b4bcca5a };
const char * __type_info__d087bf88dadfc976_arg_names_var_2201614657377291794[2] = { "self", "expr" };
VarInfo __struct_info__1e8db4ddc1444e12_field_34 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__af63eb4c86020609, nullptr, (TypeInfo **)__type_info__d087bf88dadfc976_arg_types_var_2201614657377291794, __type_info__d087bf88dadfc976_arg_names_var_2201614657377291794, 2, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<Expression> const ))>::size, UINT64_C(0xd087bf88dadfc976), "preVisitExpression", offsetof(ast::AstVisitor,preVisitExpression), 0 };
TypeInfo * __type_info__4782749160e23df2_arg_types_var_2201614657377291794[2] = { &__type_info__21586ce84f433a21, &__type_info__98064c57b4bcca5a };
const char * __type_info__4782749160e23df2_arg_names_var_2201614657377291794[2] = { "self", "expr" };
VarInfo __struct_info__1e8db4ddc1444e12_field_35 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__6636442e03391ebf, nullptr, (TypeInfo **)__type_info__4782749160e23df2_arg_types_var_2201614657377291794, __type_info__4782749160e23df2_arg_names_var_2201614657377291794, 2, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((smart_ptr_raw<Expression>,ast::AstVisitor,smart_ptr_raw<Expression> const ))>::size, UINT64_C(0x4782749160e23df2), "visitExpression", offsetof(ast::AstVisitor,visitExpression), 0 };
TypeInfo * __type_info__e4da73044655d61b_arg_types_var_2201614657377291794[2] = { &__type_info__21586ce84f433a21, &__type_info__4dee28f2a93bbef7 };
const char * __type_info__e4da73044655d61b_arg_names_var_2201614657377291794[2] = { "self", "blk" };
VarInfo __struct_info__1e8db4ddc1444e12_field_36 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__af63eb4c86020609, nullptr, (TypeInfo **)__type_info__e4da73044655d61b_arg_types_var_2201614657377291794, __type_info__e4da73044655d61b_arg_names_var_2201614657377291794, 2, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<ExprBlock> const ))>::size, UINT64_C(0xe4da73044655d61b), "preVisitExprBlock", offsetof(ast::AstVisitor,preVisitExprBlock), 0 };
TypeInfo * __type_info__29320d51a2c5f4d_arg_types_var_2201614657377291794[2] = { &__type_info__21586ce84f433a21, &__type_info__4dee28f2a93bbef7 };
const char * __type_info__29320d51a2c5f4d_arg_names_var_2201614657377291794[2] = { "self", "blk" };
VarInfo __struct_info__1e8db4ddc1444e12_field_37 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__6636442e03391ebf, nullptr, (TypeInfo **)__type_info__29320d51a2c5f4d_arg_types_var_2201614657377291794, __type_info__29320d51a2c5f4d_arg_names_var_2201614657377291794, 2, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((smart_ptr_raw<Expression>,ast::AstVisitor,smart_ptr_raw<ExprBlock> const ))>::size, UINT64_C(0x29320d51a2c5f4d), "visitExprBlock", offsetof(ast::AstVisitor,visitExprBlock), 0 };
TypeInfo * __type_info__fad133f08b433e3b_arg_types_var_2201614657377291794[4] = { &__type_info__21586ce84f433a21, &__type_info__4dee28f2a93bbef7, &__type_info__a3a6bcfebaf8fcd8, &__type_info__af81fe4c86352052 };
const char * __type_info__fad133f08b433e3b_arg_names_var_2201614657377291794[4] = { "self", "blk", "arg", "lastArg" };
VarInfo __struct_info__1e8db4ddc1444e12_field_38 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__af63eb4c86020609, nullptr, (TypeInfo **)__type_info__fad133f08b433e3b_arg_types_var_2201614657377291794, __type_info__fad133f08b433e3b_arg_names_var_2201614657377291794, 4, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<ExprBlock> const ,smart_ptr_raw<Variable> const ,bool))>::size, UINT64_C(0xfad133f08b433e3b), "preVisitExprBlockArgument", offsetof(ast::AstVisitor,preVisitExprBlockArgument), 0 };
TypeInfo * __type_info__e68dd1c7036b46b6_arg_types_var_2201614657377291794[4] = { &__type_info__21586ce84f433a21, &__type_info__4dee28f2a93bbef7, &__type_info__a3a6bcfebaf8fcd8, &__type_info__af81fe4c86352052 };
const char * __type_info__e68dd1c7036b46b6_arg_names_var_2201614657377291794[4] = { "self", "blk", "arg", "lastArg" };
VarInfo __struct_info__1e8db4ddc1444e12_field_39 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__4d5fdda373bcfbd1, nullptr, (TypeInfo **)__type_info__e68dd1c7036b46b6_arg_types_var_2201614657377291794, __type_info__e68dd1c7036b46b6_arg_names_var_2201614657377291794, 4, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((smart_ptr_raw<Variable>,ast::AstVisitor,smart_ptr_raw<ExprBlock> const ,smart_ptr_raw<Variable> const ,bool))>::size, UINT64_C(0xe68dd1c7036b46b6), "visitExprBlockArgument", offsetof(ast::AstVisitor,visitExprBlockArgument), 0 };
TypeInfo * __type_info__883c3e97b305c7e1_arg_types_var_2201614657377291794[4] = { &__type_info__21586ce84f433a21, &__type_info__4dee28f2a93bbef7, &__type_info__a3a6bcfebaf8fcd8, &__type_info__98064c57b4bcca5a };
const char * __type_info__883c3e97b305c7e1_arg_names_var_2201614657377291794[4] = { "self", "blk", "arg", "expr" };
VarInfo __struct_info__1e8db4ddc1444e12_field_40 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__af63eb4c86020609, nullptr, (TypeInfo **)__type_info__883c3e97b305c7e1_arg_types_var_2201614657377291794, __type_info__883c3e97b305c7e1_arg_names_var_2201614657377291794, 4, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<ExprBlock> const ,smart_ptr_raw<Variable> const ,smart_ptr_raw<Expression> const ))>::size, UINT64_C(0x883c3e97b305c7e1), "preVisitExprBlockArgumentInit", offsetof(ast::AstVisitor,preVisitExprBlockArgumentInit), 0 };
TypeInfo * __type_info__7ece88bde3d9c42c_arg_types_var_2201614657377291794[4] = { &__type_info__21586ce84f433a21, &__type_info__4dee28f2a93bbef7, &__type_info__a3a6bcfebaf8fcd8, &__type_info__98064c57b4bcca5a };
const char * __type_info__7ece88bde3d9c42c_arg_names_var_2201614657377291794[4] = { "self", "blk", "arg", "expr" };
VarInfo __struct_info__1e8db4ddc1444e12_field_41 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__6636442e03391ebf, nullptr, (TypeInfo **)__type_info__7ece88bde3d9c42c_arg_types_var_2201614657377291794, __type_info__7ece88bde3d9c42c_arg_names_var_2201614657377291794, 4, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((smart_ptr_raw<Expression>,ast::AstVisitor,smart_ptr_raw<ExprBlock> const ,smart_ptr_raw<Variable> const ,smart_ptr_raw<Expression> const ))>::size, UINT64_C(0x7ece88bde3d9c42c), "visitExprBlockArgumentInit", offsetof(ast::AstVisitor,visitExprBlockArgumentInit), 0 };
TypeInfo * __type_info__3eb766e159e2db49_arg_types_var_2201614657377291794[3] = { &__type_info__21586ce84f433a21, &__type_info__4dee28f2a93bbef7, &__type_info__98064c57b4bcca5a };
const char * __type_info__3eb766e159e2db49_arg_names_var_2201614657377291794[3] = { "self", "blk", "expr" };
VarInfo __struct_info__1e8db4ddc1444e12_field_42 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__af63eb4c86020609, nullptr, (TypeInfo **)__type_info__3eb766e159e2db49_arg_types_var_2201614657377291794, __type_info__3eb766e159e2db49_arg_names_var_2201614657377291794, 3, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<ExprBlock> const ,smart_ptr_raw<Expression> const ))>::size, UINT64_C(0x3eb766e159e2db49), "preVisitExprBlockExpression", offsetof(ast::AstVisitor,preVisitExprBlockExpression), 0 };
TypeInfo * __type_info__4625bd7717ba4469_arg_types_var_2201614657377291794[3] = { &__type_info__21586ce84f433a21, &__type_info__4dee28f2a93bbef7, &__type_info__98064c57b4bcca5a };
const char * __type_info__4625bd7717ba4469_arg_names_var_2201614657377291794[3] = { "self", "blk", "expr" };
VarInfo __struct_info__1e8db4ddc1444e12_field_43 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__6636442e03391ebf, nullptr, (TypeInfo **)__type_info__4625bd7717ba4469_arg_types_var_2201614657377291794, __type_info__4625bd7717ba4469_arg_names_var_2201614657377291794, 3, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((smart_ptr_raw<Expression>,ast::AstVisitor,smart_ptr_raw<ExprBlock> const ,smart_ptr_raw<Expression> const ))>::size, UINT64_C(0x4625bd7717ba4469), "visitExprBlockExpression", offsetof(ast::AstVisitor,visitExprBlockExpression), 0 };
TypeInfo * __type_info__9f8350e9c19f8255_arg_types_var_2201614657377291794[2] = { &__type_info__21586ce84f433a21, &__type_info__4dee28f2a93bbef7 };
const char * __type_info__9f8350e9c19f8255_arg_names_var_2201614657377291794[2] = { "self", "blk" };
VarInfo __struct_info__1e8db4ddc1444e12_field_44 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__af63eb4c86020609, nullptr, (TypeInfo **)__type_info__9f8350e9c19f8255_arg_types_var_2201614657377291794, __type_info__9f8350e9c19f8255_arg_names_var_2201614657377291794, 2, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<ExprBlock> const ))>::size, UINT64_C(0x9f8350e9c19f8255), "preVisitExprBlockFinal", offsetof(ast::AstVisitor,preVisitExprBlockFinal), 0 };
TypeInfo * __type_info__8209de0cf0162633_arg_types_var_2201614657377291794[2] = { &__type_info__21586ce84f433a21, &__type_info__4dee28f2a93bbef7 };
const char * __type_info__8209de0cf0162633_arg_names_var_2201614657377291794[2] = { "self", "blk" };
VarInfo __struct_info__1e8db4ddc1444e12_field_45 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__af63eb4c86020609, nullptr, (TypeInfo **)__type_info__8209de0cf0162633_arg_types_var_2201614657377291794, __type_info__8209de0cf0162633_arg_names_var_2201614657377291794, 2, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<ExprBlock> const ))>::size, UINT64_C(0x8209de0cf0162633), "visitExprBlockFinal", offsetof(ast::AstVisitor,visitExprBlockFinal), 0 };
TypeInfo * __type_info__1fbffaa00541e191_arg_types_var_2201614657377291794[3] = { &__type_info__21586ce84f433a21, &__type_info__4dee28f2a93bbef7, &__type_info__98064c57b4bcca5a };
const char * __type_info__1fbffaa00541e191_arg_names_var_2201614657377291794[3] = { "self", "blk", "expr" };
VarInfo __struct_info__1e8db4ddc1444e12_field_46 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__af63eb4c86020609, nullptr, (TypeInfo **)__type_info__1fbffaa00541e191_arg_types_var_2201614657377291794, __type_info__1fbffaa00541e191_arg_names_var_2201614657377291794, 3, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<ExprBlock> const ,smart_ptr_raw<Expression> const ))>::size, UINT64_C(0x1fbffaa00541e191), "preVisitExprBlockFinalExpression", offsetof(ast::AstVisitor,preVisitExprBlockFinalExpression), 0 };
TypeInfo * __type_info__f6130cfee51f9aa1_arg_types_var_2201614657377291794[3] = { &__type_info__21586ce84f433a21, &__type_info__4dee28f2a93bbef7, &__type_info__98064c57b4bcca5a };
const char * __type_info__f6130cfee51f9aa1_arg_names_var_2201614657377291794[3] = { "self", "blk", "expr" };
VarInfo __struct_info__1e8db4ddc1444e12_field_47 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__6636442e03391ebf, nullptr, (TypeInfo **)__type_info__f6130cfee51f9aa1_arg_types_var_2201614657377291794, __type_info__f6130cfee51f9aa1_arg_names_var_2201614657377291794, 3, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((smart_ptr_raw<Expression>,ast::AstVisitor,smart_ptr_raw<ExprBlock> const ,smart_ptr_raw<Expression> const ))>::size, UINT64_C(0xf6130cfee51f9aa1), "visitExprBlockFinalExpression", offsetof(ast::AstVisitor,visitExprBlockFinalExpression), 0 };
TypeInfo * __type_info__5c324202df78f6a9_arg_types_var_2201614657377291794[2] = { &__type_info__21586ce84f433a21, &__type_info__349161eed600549f };
const char * __type_info__5c324202df78f6a9_arg_names_var_2201614657377291794[2] = { "self", "expr" };
VarInfo __struct_info__1e8db4ddc1444e12_field_48 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__af63eb4c86020609, nullptr, (TypeInfo **)__type_info__5c324202df78f6a9_arg_types_var_2201614657377291794, __type_info__5c324202df78f6a9_arg_names_var_2201614657377291794, 2, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<ExprLet> const ))>::size, UINT64_C(0x5c324202df78f6a9), "preVisitExprLet", offsetof(ast::AstVisitor,preVisitExprLet), 0 };
TypeInfo * __type_info__9387c6938b8fa5e7_arg_types_var_2201614657377291794[2] = { &__type_info__21586ce84f433a21, &__type_info__349161eed600549f };
const char * __type_info__9387c6938b8fa5e7_arg_names_var_2201614657377291794[2] = { "self", "expr" };
VarInfo __struct_info__1e8db4ddc1444e12_field_49 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__6636442e03391ebf, nullptr, (TypeInfo **)__type_info__9387c6938b8fa5e7_arg_types_var_2201614657377291794, __type_info__9387c6938b8fa5e7_arg_names_var_2201614657377291794, 2, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((smart_ptr_raw<Expression>,ast::AstVisitor,smart_ptr_raw<ExprLet> const ))>::size, UINT64_C(0x9387c6938b8fa5e7), "visitExprLet", offsetof(ast::AstVisitor,visitExprLet), 0 };
TypeInfo * __type_info__b5f04820b8d5b502_arg_types_var_2201614657377291794[4] = { &__type_info__21586ce84f433a21, &__type_info__349161eed600549f, &__type_info__a3a6bcfebaf8fcd8, &__type_info__af81fe4c86352052 };
const char * __type_info__b5f04820b8d5b502_arg_names_var_2201614657377291794[4] = { "self", "expr", "arg", "lastArg" };
VarInfo __struct_info__1e8db4ddc1444e12_field_50 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__af63eb4c86020609, nullptr, (TypeInfo **)__type_info__b5f04820b8d5b502_arg_types_var_2201614657377291794, __type_info__b5f04820b8d5b502_arg_names_var_2201614657377291794, 4, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<ExprLet> const ,smart_ptr_raw<Variable> const ,bool))>::size, UINT64_C(0xb5f04820b8d5b502), "preVisitExprLetVariable", offsetof(ast::AstVisitor,preVisitExprLetVariable), 0 };
TypeInfo * __type_info__692a2ee8bd34e45e_arg_types_var_2201614657377291794[4] = { &__type_info__21586ce84f433a21, &__type_info__349161eed600549f, &__type_info__a3a6bcfebaf8fcd8, &__type_info__af81fe4c86352052 };
const char * __type_info__692a2ee8bd34e45e_arg_names_var_2201614657377291794[4] = { "self", "expr", "arg", "lastArg" };
VarInfo __struct_info__1e8db4ddc1444e12_field_51 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__4d5fdda373bcfbd1, nullptr, (TypeInfo **)__type_info__692a2ee8bd34e45e_arg_types_var_2201614657377291794, __type_info__692a2ee8bd34e45e_arg_names_var_2201614657377291794, 4, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((smart_ptr_raw<Variable>,ast::AstVisitor,smart_ptr_raw<ExprLet> const ,smart_ptr_raw<Variable> const ,bool))>::size, UINT64_C(0x692a2ee8bd34e45e), "visitExprLetVariable", offsetof(ast::AstVisitor,visitExprLetVariable), 0 };
TypeInfo * __type_info__86d2782a6bf7b7d0_arg_types_var_2201614657377291794[4] = { &__type_info__21586ce84f433a21, &__type_info__349161eed600549f, &__type_info__a3a6bcfebaf8fcd8, &__type_info__98064c57b4bcca5a };
const char * __type_info__86d2782a6bf7b7d0_arg_names_var_2201614657377291794[4] = { "self", "blk", "arg", "expr" };
VarInfo __struct_info__1e8db4ddc1444e12_field_52 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__af63eb4c86020609, nullptr, (TypeInfo **)__type_info__86d2782a6bf7b7d0_arg_types_var_2201614657377291794, __type_info__86d2782a6bf7b7d0_arg_names_var_2201614657377291794, 4, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<ExprLet> const ,smart_ptr_raw<Variable> const ,smart_ptr_raw<Expression> const ))>::size, UINT64_C(0x86d2782a6bf7b7d0), "preVisitExprLetVariableInit", offsetof(ast::AstVisitor,preVisitExprLetVariableInit), 0 };
TypeInfo * __type_info__2aa1ee74f855f5b4_arg_types_var_2201614657377291794[4] = { &__type_info__21586ce84f433a21, &__type_info__349161eed600549f, &__type_info__a3a6bcfebaf8fcd8, &__type_info__98064c57b4bcca5a };
const char * __type_info__2aa1ee74f855f5b4_arg_names_var_2201614657377291794[4] = { "self", "blk", "arg", "expr" };
VarInfo __struct_info__1e8db4ddc1444e12_field_53 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__6636442e03391ebf, nullptr, (TypeInfo **)__type_info__2aa1ee74f855f5b4_arg_types_var_2201614657377291794, __type_info__2aa1ee74f855f5b4_arg_names_var_2201614657377291794, 4, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((smart_ptr_raw<Expression>,ast::AstVisitor,smart_ptr_raw<ExprLet> const ,smart_ptr_raw<Variable> const ,smart_ptr_raw<Expression> const ))>::size, UINT64_C(0x2aa1ee74f855f5b4), "visitExprLetVariableInit", offsetof(ast::AstVisitor,visitExprLetVariableInit), 0 };
TypeInfo * __type_info__b8106945f6e3fc3a_arg_types_var_2201614657377291794[2] = { &__type_info__21586ce84f433a21, &__type_info__79c6e4b278757551 };
const char * __type_info__b8106945f6e3fc3a_arg_names_var_2201614657377291794[2] = { "self", "arg" };
VarInfo __struct_info__1e8db4ddc1444e12_field_54 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__af63df4c8601f1a5, nullptr, (TypeInfo **)__type_info__b8106945f6e3fc3a_arg_types_var_2201614657377291794, __type_info__b8106945f6e3fc3a_arg_names_var_2201614657377291794, 2, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((bool,ast::AstVisitor,Variable * const ))>::size, UINT64_C(0xb8106945f6e3fc3a), "canVisitGlobalVariable", offsetof(ast::AstVisitor,canVisitGlobalVariable), 0 };
TypeInfo * __type_info__a27d86cb8c142849_arg_types_var_2201614657377291794[2] = { &__type_info__21586ce84f433a21, &__type_info__e57b0f261f47b890 };
const char * __type_info__a27d86cb8c142849_arg_names_var_2201614657377291794[2] = { "self", "prog" };
VarInfo __struct_info__1e8db4ddc1444e12_field_55 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__af63eb4c86020609, nullptr, (TypeInfo **)__type_info__a27d86cb8c142849_arg_types_var_2201614657377291794, __type_info__a27d86cb8c142849_arg_names_var_2201614657377291794, 2, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<Program> const ))>::size, UINT64_C(0xa27d86cb8c142849), "preVisitGlobalLet", offsetof(ast::AstVisitor,preVisitGlobalLet), 0 };
TypeInfo * __type_info__6c71ddec41aaaf17_arg_types_var_2201614657377291794[2] = { &__type_info__21586ce84f433a21, &__type_info__e57b0f261f47b890 };
const char * __type_info__6c71ddec41aaaf17_arg_names_var_2201614657377291794[2] = { "self", "prog" };
VarInfo __struct_info__1e8db4ddc1444e12_field_56 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__af63eb4c86020609, nullptr, (TypeInfo **)__type_info__6c71ddec41aaaf17_arg_types_var_2201614657377291794, __type_info__6c71ddec41aaaf17_arg_names_var_2201614657377291794, 2, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<Program> const ))>::size, UINT64_C(0x6c71ddec41aaaf17), "visitGlobalLet", offsetof(ast::AstVisitor,visitGlobalLet), 0 };
TypeInfo * __type_info__5e30630df7d456a2_arg_types_var_2201614657377291794[3] = { &__type_info__21586ce84f433a21, &__type_info__a3a6bcfebaf8fcd8, &__type_info__af81fe4c86352052 };
const char * __type_info__5e30630df7d456a2_arg_names_var_2201614657377291794[3] = { "self", "arg", "lastArg" };
VarInfo __struct_info__1e8db4ddc1444e12_field_57 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__af63eb4c86020609, nullptr, (TypeInfo **)__type_info__5e30630df7d456a2_arg_types_var_2201614657377291794, __type_info__5e30630df7d456a2_arg_names_var_2201614657377291794, 3, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<Variable> const ,bool))>::size, UINT64_C(0x5e30630df7d456a2), "preVisitGlobalLetVariable", offsetof(ast::AstVisitor,preVisitGlobalLetVariable), 0 };
TypeInfo * __type_info__ab31c0bc9573a50e_arg_types_var_2201614657377291794[3] = { &__type_info__21586ce84f433a21, &__type_info__a3a6bcfebaf8fcd8, &__type_info__af81fe4c86352052 };
const char * __type_info__ab31c0bc9573a50e_arg_names_var_2201614657377291794[3] = { "self", "arg", "lastArg" };
VarInfo __struct_info__1e8db4ddc1444e12_field_58 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__4d5fdda373bcfbd1, nullptr, (TypeInfo **)__type_info__ab31c0bc9573a50e_arg_types_var_2201614657377291794, __type_info__ab31c0bc9573a50e_arg_names_var_2201614657377291794, 3, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((smart_ptr_raw<Variable>,ast::AstVisitor,smart_ptr_raw<Variable> const ,bool))>::size, UINT64_C(0xab31c0bc9573a50e), "visitGlobalLetVariable", offsetof(ast::AstVisitor,visitGlobalLetVariable), 0 };
TypeInfo * __type_info__8341a2400990c170_arg_types_var_2201614657377291794[3] = { &__type_info__21586ce84f433a21, &__type_info__a3a6bcfebaf8fcd8, &__type_info__98064c57b4bcca5a };
const char * __type_info__8341a2400990c170_arg_names_var_2201614657377291794[3] = { "self", "arg", "expr" };
VarInfo __struct_info__1e8db4ddc1444e12_field_59 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__af63eb4c86020609, nullptr, (TypeInfo **)__type_info__8341a2400990c170_arg_types_var_2201614657377291794, __type_info__8341a2400990c170_arg_names_var_2201614657377291794, 3, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<Variable> const ,smart_ptr_raw<Expression> const ))>::size, UINT64_C(0x8341a2400990c170), "preVisitGlobalLetVariableInit", offsetof(ast::AstVisitor,preVisitGlobalLetVariableInit), 0 };
TypeInfo * __type_info__8edfb2a132d8a1a4_arg_types_var_2201614657377291794[3] = { &__type_info__21586ce84f433a21, &__type_info__a3a6bcfebaf8fcd8, &__type_info__98064c57b4bcca5a };
const char * __type_info__8edfb2a132d8a1a4_arg_names_var_2201614657377291794[3] = { "self", "arg", "expr" };
VarInfo __struct_info__1e8db4ddc1444e12_field_60 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__6636442e03391ebf, nullptr, (TypeInfo **)__type_info__8edfb2a132d8a1a4_arg_types_var_2201614657377291794, __type_info__8edfb2a132d8a1a4_arg_names_var_2201614657377291794, 3, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((smart_ptr_raw<Expression>,ast::AstVisitor,smart_ptr_raw<Variable> const ,smart_ptr_raw<Expression> const ))>::size, UINT64_C(0x8edfb2a132d8a1a4), "visitGlobalLetVariableInit", offsetof(ast::AstVisitor,visitGlobalLetVariableInit), 0 };
TypeInfo * __type_info__89002db3d2a382d9_arg_types_var_2201614657377291794[2] = { &__type_info__21586ce84f433a21, &__type_info__4e7dff8bb14f539 };
const char * __type_info__89002db3d2a382d9_arg_names_var_2201614657377291794[2] = { "self", "expr" };
VarInfo __struct_info__1e8db4ddc1444e12_field_61 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__af63eb4c86020609, nullptr, (TypeInfo **)__type_info__89002db3d2a382d9_arg_types_var_2201614657377291794, __type_info__89002db3d2a382d9_arg_names_var_2201614657377291794, 2, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<ExprStringBuilder> const ))>::size, UINT64_C(0x89002db3d2a382d9), "preVisitExprStringBuilder", offsetof(ast::AstVisitor,preVisitExprStringBuilder), 0 };
TypeInfo * __type_info__7cb15833a89cbb44_arg_types_var_2201614657377291794[2] = { &__type_info__21586ce84f433a21, &__type_info__4e7dff8bb14f539 };
const char * __type_info__7cb15833a89cbb44_arg_names_var_2201614657377291794[2] = { "self", "expr" };
VarInfo __struct_info__1e8db4ddc1444e12_field_62 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__6636442e03391ebf, nullptr, (TypeInfo **)__type_info__7cb15833a89cbb44_arg_types_var_2201614657377291794, __type_info__7cb15833a89cbb44_arg_names_var_2201614657377291794, 2, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((smart_ptr_raw<Expression>,ast::AstVisitor,smart_ptr_raw<ExprStringBuilder> const ))>::size, UINT64_C(0x7cb15833a89cbb44), "visitExprStringBuilder", offsetof(ast::AstVisitor,visitExprStringBuilder), 0 };
TypeInfo * __type_info__dcd62ab4848d54b8_arg_types_var_2201614657377291794[4] = { &__type_info__21586ce84f433a21, &__type_info__4e7dff8bb14f539, &__type_info__98064c57b4bcca5a, &__type_info__af81fe4c86352052 };
const char * __type_info__dcd62ab4848d54b8_arg_names_var_2201614657377291794[4] = { "self", "expr", "elem", "last" };
VarInfo __struct_info__1e8db4ddc1444e12_field_63 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__af63eb4c86020609, nullptr, (TypeInfo **)__type_info__dcd62ab4848d54b8_arg_types_var_2201614657377291794, __type_info__dcd62ab4848d54b8_arg_names_var_2201614657377291794, 4, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<ExprStringBuilder> const ,smart_ptr_raw<Expression> const ,bool))>::size, UINT64_C(0xdcd62ab4848d54b8), "preVisitExprStringBuilderElement", offsetof(ast::AstVisitor,preVisitExprStringBuilderElement), 0 };
TypeInfo * __type_info__50599c4cfbbbf1a3_arg_types_var_2201614657377291794[4] = { &__type_info__21586ce84f433a21, &__type_info__4e7dff8bb14f539, &__type_info__98064c57b4bcca5a, &__type_info__af81fe4c86352052 };
const char * __type_info__50599c4cfbbbf1a3_arg_names_var_2201614657377291794[4] = { "self", "expr", "elem", "last" };
VarInfo __struct_info__1e8db4ddc1444e12_field_64 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__6636442e03391ebf, nullptr, (TypeInfo **)__type_info__50599c4cfbbbf1a3_arg_types_var_2201614657377291794, __type_info__50599c4cfbbbf1a3_arg_names_var_2201614657377291794, 4, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((smart_ptr_raw<Expression>,ast::AstVisitor,smart_ptr_raw<ExprStringBuilder> const ,smart_ptr_raw<Expression> const ,bool))>::size, UINT64_C(0x50599c4cfbbbf1a3), "visitExprStringBuilderElement", offsetof(ast::AstVisitor,visitExprStringBuilderElement), 0 };
TypeInfo * __type_info__5c394f02df7f2b6e_arg_types_var_2201614657377291794[2] = { &__type_info__21586ce84f433a21, &__type_info__5d6138f13e1e88c4 };
const char * __type_info__5c394f02df7f2b6e_arg_names_var_2201614657377291794[2] = { "self", "expr" };
VarInfo __struct_info__1e8db4ddc1444e12_field_65 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__af63eb4c86020609, nullptr, (TypeInfo **)__type_info__5c394f02df7f2b6e_arg_types_var_2201614657377291794, __type_info__5c394f02df7f2b6e_arg_names_var_2201614657377291794, 2, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<ExprNew> const ))>::size, UINT64_C(0x5c394f02df7f2b6e), "preVisitExprNew", offsetof(ast::AstVisitor,preVisitExprNew), 0 };
TypeInfo * __type_info__9a7ac69391983ce7_arg_types_var_2201614657377291794[2] = { &__type_info__21586ce84f433a21, &__type_info__5d6138f13e1e88c4 };
const char * __type_info__9a7ac69391983ce7_arg_names_var_2201614657377291794[2] = { "self", "expr" };
VarInfo __struct_info__1e8db4ddc1444e12_field_66 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__6636442e03391ebf, nullptr, (TypeInfo **)__type_info__9a7ac69391983ce7_arg_types_var_2201614657377291794, __type_info__9a7ac69391983ce7_arg_names_var_2201614657377291794, 2, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((smart_ptr_raw<Expression>,ast::AstVisitor,smart_ptr_raw<ExprNew> const ))>::size, UINT64_C(0x9a7ac69391983ce7), "visitExprNew", offsetof(ast::AstVisitor,visitExprNew), 0 };
TypeInfo * __type_info__ae3ae56613d11d42_arg_types_var_2201614657377291794[4] = { &__type_info__21586ce84f433a21, &__type_info__5d6138f13e1e88c4, &__type_info__98064c57b4bcca5a, &__type_info__af81fe4c86352052 };
const char * __type_info__ae3ae56613d11d42_arg_names_var_2201614657377291794[4] = { "self", "expr", "arg", "last" };
VarInfo __struct_info__1e8db4ddc1444e12_field_67 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__af63eb4c86020609, nullptr, (TypeInfo **)__type_info__ae3ae56613d11d42_arg_types_var_2201614657377291794, __type_info__ae3ae56613d11d42_arg_names_var_2201614657377291794, 4, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<ExprNew> const ,smart_ptr_raw<Expression> const ,bool))>::size, UINT64_C(0xae3ae56613d11d42), "preVisitExprNewArgument", offsetof(ast::AstVisitor,preVisitExprNewArgument), 0 };
TypeInfo * __type_info__999aa82fd12dcf8_arg_types_var_2201614657377291794[4] = { &__type_info__21586ce84f433a21, &__type_info__5d6138f13e1e88c4, &__type_info__98064c57b4bcca5a, &__type_info__af81fe4c86352052 };
const char * __type_info__999aa82fd12dcf8_arg_names_var_2201614657377291794[4] = { "self", "expr", "arg", "last" };
VarInfo __struct_info__1e8db4ddc1444e12_field_68 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__6636442e03391ebf, nullptr, (TypeInfo **)__type_info__999aa82fd12dcf8_arg_types_var_2201614657377291794, __type_info__999aa82fd12dcf8_arg_names_var_2201614657377291794, 4, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((smart_ptr_raw<Expression>,ast::AstVisitor,smart_ptr_raw<ExprNew> const ,smart_ptr_raw<Expression> const ,bool))>::size, UINT64_C(0x999aa82fd12dcf8), "visitExprNewArgument", offsetof(ast::AstVisitor,visitExprNewArgument), 0 };
TypeInfo * __type_info__54a28bc44192b9c1_arg_types_var_2201614657377291794[2] = { &__type_info__21586ce84f433a21, &__type_info__44cd26f4cb3df7e1 };
const char * __type_info__54a28bc44192b9c1_arg_names_var_2201614657377291794[2] = { "self", "expr" };
VarInfo __struct_info__1e8db4ddc1444e12_field_69 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__af63eb4c86020609, nullptr, (TypeInfo **)__type_info__54a28bc44192b9c1_arg_types_var_2201614657377291794, __type_info__54a28bc44192b9c1_arg_names_var_2201614657377291794, 2, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<ExprNamedCall> const ))>::size, UINT64_C(0x54a28bc44192b9c1), "preVisitExprNamedCall", offsetof(ast::AstVisitor,preVisitExprNamedCall), 0 };
TypeInfo * __type_info__b015b3f7761553d5_arg_types_var_2201614657377291794[2] = { &__type_info__21586ce84f433a21, &__type_info__44cd26f4cb3df7e1 };
const char * __type_info__b015b3f7761553d5_arg_names_var_2201614657377291794[2] = { "self", "expr" };
VarInfo __struct_info__1e8db4ddc1444e12_field_70 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__6636442e03391ebf, nullptr, (TypeInfo **)__type_info__b015b3f7761553d5_arg_types_var_2201614657377291794, __type_info__b015b3f7761553d5_arg_names_var_2201614657377291794, 2, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((smart_ptr_raw<Expression>,ast::AstVisitor,smart_ptr_raw<ExprNamedCall> const ))>::size, UINT64_C(0xb015b3f7761553d5), "visitExprNamedCall", offsetof(ast::AstVisitor,visitExprNamedCall), 0 };
TypeInfo * __type_info__9d289c0e202c475_arg_types_var_2201614657377291794[4] = { &__type_info__21586ce84f433a21, &__type_info__44cd26f4cb3df7e1, &__type_info__9a5e492166d49949, &__type_info__af81fe4c86352052 };
const char * __type_info__9d289c0e202c475_arg_names_var_2201614657377291794[4] = { "self", "expr", "arg", "last" };
VarInfo __struct_info__1e8db4ddc1444e12_field_71 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__af63eb4c86020609, nullptr, (TypeInfo **)__type_info__9d289c0e202c475_arg_types_var_2201614657377291794, __type_info__9d289c0e202c475_arg_names_var_2201614657377291794, 4, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<ExprNamedCall> const ,smart_ptr_raw<MakeFieldDecl> const ,bool))>::size, UINT64_C(0x9d289c0e202c475), "preVisitExprNamedCallArgument", offsetof(ast::AstVisitor,preVisitExprNamedCallArgument), 0 };
TypeInfo * __type_info__ec7be13e5039487e_arg_types_var_2201614657377291794[4] = { &__type_info__21586ce84f433a21, &__type_info__44cd26f4cb3df7e1, &__type_info__9a5e492166d49949, &__type_info__af81fe4c86352052 };
const char * __type_info__ec7be13e5039487e_arg_names_var_2201614657377291794[4] = { "self", "expr", "arg", "last" };
VarInfo __struct_info__1e8db4ddc1444e12_field_72 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__c52835f1e7c9ab84, nullptr, (TypeInfo **)__type_info__ec7be13e5039487e_arg_types_var_2201614657377291794, __type_info__ec7be13e5039487e_arg_names_var_2201614657377291794, 4, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((smart_ptr_raw<MakeFieldDecl>,ast::AstVisitor,smart_ptr_raw<ExprNamedCall> const ,smart_ptr_raw<MakeFieldDecl> const ,bool))>::size, UINT64_C(0xec7be13e5039487e), "visitExprNamedCallArgument", offsetof(ast::AstVisitor,visitExprNamedCallArgument), 0 };
TypeInfo * __type_info__bbbb051551a66a0a_arg_types_var_2201614657377291794[2] = { &__type_info__21586ce84f433a21, &__type_info__8faf3ae8c5ebe47a };
const char * __type_info__bbbb051551a66a0a_arg_names_var_2201614657377291794[2] = { "self", "expr" };
VarInfo __struct_info__1e8db4ddc1444e12_field_73 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__af63eb4c86020609, nullptr, (TypeInfo **)__type_info__bbbb051551a66a0a_arg_types_var_2201614657377291794, __type_info__bbbb051551a66a0a_arg_names_var_2201614657377291794, 2, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<ExprLooksLikeCall> const ))>::size, UINT64_C(0xbbbb051551a66a0a), "preVisitExprLooksLikeCall", offsetof(ast::AstVisitor,preVisitExprLooksLikeCall), 0 };
TypeInfo * __type_info__166357f10c39f6fc_arg_types_var_2201614657377291794[2] = { &__type_info__21586ce84f433a21, &__type_info__8faf3ae8c5ebe47a };
const char * __type_info__166357f10c39f6fc_arg_names_var_2201614657377291794[2] = { "self", "expr" };
VarInfo __struct_info__1e8db4ddc1444e12_field_74 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__6636442e03391ebf, nullptr, (TypeInfo **)__type_info__166357f10c39f6fc_arg_types_var_2201614657377291794, __type_info__166357f10c39f6fc_arg_names_var_2201614657377291794, 2, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((smart_ptr_raw<Expression>,ast::AstVisitor,smart_ptr_raw<ExprLooksLikeCall> const ))>::size, UINT64_C(0x166357f10c39f6fc), "visitExprLooksLikeCall", offsetof(ast::AstVisitor,visitExprLooksLikeCall), 0 };
TypeInfo * __type_info__73ec7f5588dcbccc_arg_types_var_2201614657377291794[4] = { &__type_info__21586ce84f433a21, &__type_info__8faf3ae8c5ebe47a, &__type_info__98064c57b4bcca5a, &__type_info__af81fe4c86352052 };
const char * __type_info__73ec7f5588dcbccc_arg_names_var_2201614657377291794[4] = { "self", "expr", "arg", "last" };
VarInfo __struct_info__1e8db4ddc1444e12_field_75 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__af63df4c8601f1a5, nullptr, (TypeInfo **)__type_info__73ec7f5588dcbccc_arg_types_var_2201614657377291794, __type_info__73ec7f5588dcbccc_arg_names_var_2201614657377291794, 4, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((bool,ast::AstVisitor,smart_ptr_raw<ExprLooksLikeCall> const ,smart_ptr_raw<Expression> const ,bool))>::size, UINT64_C(0x73ec7f5588dcbccc), "canVisitExprLooksLikeCallArgument", offsetof(ast::AstVisitor,canVisitExprLooksLikeCallArgument), 0 };
TypeInfo * __type_info__29a0d7a9e4b9e5f6_arg_types_var_2201614657377291794[4] = { &__type_info__21586ce84f433a21, &__type_info__8faf3ae8c5ebe47a, &__type_info__98064c57b4bcca5a, &__type_info__af81fe4c86352052 };
const char * __type_info__29a0d7a9e4b9e5f6_arg_names_var_2201614657377291794[4] = { "self", "expr", "arg", "last" };
VarInfo __struct_info__1e8db4ddc1444e12_field_76 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__af63eb4c86020609, nullptr, (TypeInfo **)__type_info__29a0d7a9e4b9e5f6_arg_types_var_2201614657377291794, __type_info__29a0d7a9e4b9e5f6_arg_names_var_2201614657377291794, 4, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<ExprLooksLikeCall> const ,smart_ptr_raw<Expression> const ,bool))>::size, UINT64_C(0x29a0d7a9e4b9e5f6), "preVisitExprLooksLikeCallArgument", offsetof(ast::AstVisitor,preVisitExprLooksLikeCallArgument), 0 };
TypeInfo * __type_info__13e0e5f72f8217fb_arg_types_var_2201614657377291794[4] = { &__type_info__21586ce84f433a21, &__type_info__8faf3ae8c5ebe47a, &__type_info__98064c57b4bcca5a, &__type_info__af81fe4c86352052 };
const char * __type_info__13e0e5f72f8217fb_arg_names_var_2201614657377291794[4] = { "self", "expr", "arg", "last" };
VarInfo __struct_info__1e8db4ddc1444e12_field_77 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__6636442e03391ebf, nullptr, (TypeInfo **)__type_info__13e0e5f72f8217fb_arg_types_var_2201614657377291794, __type_info__13e0e5f72f8217fb_arg_names_var_2201614657377291794, 4, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((smart_ptr_raw<Expression>,ast::AstVisitor,smart_ptr_raw<ExprLooksLikeCall> const ,smart_ptr_raw<Expression> const ,bool))>::size, UINT64_C(0x13e0e5f72f8217fb), "visitExprLooksLikeCallArgument", offsetof(ast::AstVisitor,visitExprLooksLikeCallArgument), 0 };
TypeInfo * __type_info__802b484819ed0c2d_arg_types_var_2201614657377291794[2] = { &__type_info__21586ce84f433a21, &__type_info__7e04c1d12891d606 };
const char * __type_info__802b484819ed0c2d_arg_names_var_2201614657377291794[2] = { "self", "expr" };
VarInfo __struct_info__1e8db4ddc1444e12_field_78 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__af63df4c8601f1a5, nullptr, (TypeInfo **)__type_info__802b484819ed0c2d_arg_types_var_2201614657377291794, __type_info__802b484819ed0c2d_arg_names_var_2201614657377291794, 2, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((bool,ast::AstVisitor,ExprCall * const ))>::size, UINT64_C(0x802b484819ed0c2d), "canVisitCall", offsetof(ast::AstVisitor,canVisitCall), 0 };
TypeInfo * __type_info__4ee15802d484dfce_arg_types_var_2201614657377291794[2] = { &__type_info__21586ce84f433a21, &__type_info__7dd1c1d1283b2d06 };
const char * __type_info__4ee15802d484dfce_arg_names_var_2201614657377291794[2] = { "self", "expr" };
VarInfo __struct_info__1e8db4ddc1444e12_field_79 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__af63eb4c86020609, nullptr, (TypeInfo **)__type_info__4ee15802d484dfce_arg_types_var_2201614657377291794, __type_info__4ee15802d484dfce_arg_names_var_2201614657377291794, 2, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<ExprCall> const ))>::size, UINT64_C(0x4ee15802d484dfce), "preVisitExprCall", offsetof(ast::AstVisitor,preVisitExprCall), 0 };
TypeInfo * __type_info__c51617cedb37de35_arg_types_var_2201614657377291794[2] = { &__type_info__21586ce84f433a21, &__type_info__7dd1c1d1283b2d06 };
const char * __type_info__c51617cedb37de35_arg_names_var_2201614657377291794[2] = { "self", "expr" };
VarInfo __struct_info__1e8db4ddc1444e12_field_80 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__6636442e03391ebf, nullptr, (TypeInfo **)__type_info__c51617cedb37de35_arg_types_var_2201614657377291794, __type_info__c51617cedb37de35_arg_names_var_2201614657377291794, 2, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((smart_ptr_raw<Expression>,ast::AstVisitor,smart_ptr_raw<ExprCall> const ))>::size, UINT64_C(0xc51617cedb37de35), "visitExprCall", offsetof(ast::AstVisitor,visitExprCall), 0 };
TypeInfo * __type_info__6a62a96f37358e75_arg_types_var_2201614657377291794[4] = { &__type_info__21586ce84f433a21, &__type_info__7dd1c1d1283b2d06, &__type_info__98064c57b4bcca5a, &__type_info__af81fe4c86352052 };
const char * __type_info__6a62a96f37358e75_arg_names_var_2201614657377291794[4] = { "self", "expr", "arg", "last" };
VarInfo __struct_info__1e8db4ddc1444e12_field_81 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__af63eb4c86020609, nullptr, (TypeInfo **)__type_info__6a62a96f37358e75_arg_types_var_2201614657377291794, __type_info__6a62a96f37358e75_arg_names_var_2201614657377291794, 4, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<ExprCall> const ,smart_ptr_raw<Expression> const ,bool))>::size, UINT64_C(0x6a62a96f37358e75), "preVisitExprCallArgument", offsetof(ast::AstVisitor,preVisitExprCallArgument), 0 };
TypeInfo * __type_info__e52aaee50baa0521_arg_types_var_2201614657377291794[4] = { &__type_info__21586ce84f433a21, &__type_info__7dd1c1d1283b2d06, &__type_info__98064c57b4bcca5a, &__type_info__af81fe4c86352052 };
const char * __type_info__e52aaee50baa0521_arg_names_var_2201614657377291794[4] = { "self", "expr", "arg", "last" };
VarInfo __struct_info__1e8db4ddc1444e12_field_82 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__6636442e03391ebf, nullptr, (TypeInfo **)__type_info__e52aaee50baa0521_arg_types_var_2201614657377291794, __type_info__e52aaee50baa0521_arg_names_var_2201614657377291794, 4, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((smart_ptr_raw<Expression>,ast::AstVisitor,smart_ptr_raw<ExprCall> const ,smart_ptr_raw<Expression> const ,bool))>::size, UINT64_C(0xe52aaee50baa0521), "visitExprCallArgument", offsetof(ast::AstVisitor,visitExprCallArgument), 0 };
TypeInfo * __type_info__f2f0e741960e1177_arg_types_var_2201614657377291794[2] = { &__type_info__21586ce84f433a21, &__type_info__e7e2063b91ac55a1 };
const char * __type_info__f2f0e741960e1177_arg_names_var_2201614657377291794[2] = { "self", "expr" };
VarInfo __struct_info__1e8db4ddc1444e12_field_83 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__af63eb4c86020609, nullptr, (TypeInfo **)__type_info__f2f0e741960e1177_arg_types_var_2201614657377291794, __type_info__f2f0e741960e1177_arg_names_var_2201614657377291794, 2, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<ExprNullCoalescing> const ))>::size, UINT64_C(0xf2f0e741960e1177), "preVisitExprNullCoalescing", offsetof(ast::AstVisitor,preVisitExprNullCoalescing), 0 };
TypeInfo * __type_info__c851ce6ee7f3502b_arg_types_var_2201614657377291794[2] = { &__type_info__21586ce84f433a21, &__type_info__e7e2063b91ac55a1 };
const char * __type_info__c851ce6ee7f3502b_arg_names_var_2201614657377291794[2] = { "self", "expr" };
VarInfo __struct_info__1e8db4ddc1444e12_field_84 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__6636442e03391ebf, nullptr, (TypeInfo **)__type_info__c851ce6ee7f3502b_arg_types_var_2201614657377291794, __type_info__c851ce6ee7f3502b_arg_names_var_2201614657377291794, 2, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((smart_ptr_raw<Expression>,ast::AstVisitor,smart_ptr_raw<ExprNullCoalescing> const ))>::size, UINT64_C(0xc851ce6ee7f3502b), "visitExprNullCoalescing", offsetof(ast::AstVisitor,visitExprNullCoalescing), 0 };
TypeInfo * __type_info__be686e26bffa9144_arg_types_var_2201614657377291794[3] = { &__type_info__21586ce84f433a21, &__type_info__e7e2063b91ac55a1, &__type_info__98064c57b4bcca5a };
const char * __type_info__be686e26bffa9144_arg_names_var_2201614657377291794[3] = { "self", "expr", "defval" };
VarInfo __struct_info__1e8db4ddc1444e12_field_85 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__af63eb4c86020609, nullptr, (TypeInfo **)__type_info__be686e26bffa9144_arg_types_var_2201614657377291794, __type_info__be686e26bffa9144_arg_names_var_2201614657377291794, 3, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<ExprNullCoalescing> const ,smart_ptr_raw<Expression> const ))>::size, UINT64_C(0xbe686e26bffa9144), "preVisitExprNullCoalescingDefault", offsetof(ast::AstVisitor,preVisitExprNullCoalescingDefault), 0 };
TypeInfo * __type_info__363d68bc53f7e730_arg_types_var_2201614657377291794[2] = { &__type_info__21586ce84f433a21, &__type_info__241df6ccda394202 };
const char * __type_info__363d68bc53f7e730_arg_names_var_2201614657377291794[2] = { "self", "expr" };
VarInfo __struct_info__1e8db4ddc1444e12_field_86 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__af63eb4c86020609, nullptr, (TypeInfo **)__type_info__363d68bc53f7e730_arg_types_var_2201614657377291794, __type_info__363d68bc53f7e730_arg_names_var_2201614657377291794, 2, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<ExprAt> const ))>::size, UINT64_C(0x363d68bc53f7e730), "preVisitExprAt", offsetof(ast::AstVisitor,preVisitExprAt), 0 };
TypeInfo * __type_info__9dedb59394916004_arg_types_var_2201614657377291794[2] = { &__type_info__21586ce84f433a21, &__type_info__241df6ccda394202 };
const char * __type_info__9dedb59394916004_arg_names_var_2201614657377291794[2] = { "self", "expr" };
VarInfo __struct_info__1e8db4ddc1444e12_field_87 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__6636442e03391ebf, nullptr, (TypeInfo **)__type_info__9dedb59394916004_arg_types_var_2201614657377291794, __type_info__9dedb59394916004_arg_names_var_2201614657377291794, 2, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((smart_ptr_raw<Expression>,ast::AstVisitor,smart_ptr_raw<ExprAt> const ))>::size, UINT64_C(0x9dedb59394916004), "visitExprAt", offsetof(ast::AstVisitor,visitExprAt), 0 };
TypeInfo * __type_info__6caf569fc5ada20f_arg_types_var_2201614657377291794[3] = { &__type_info__21586ce84f433a21, &__type_info__241df6ccda394202, &__type_info__98064c57b4bcca5a };
const char * __type_info__6caf569fc5ada20f_arg_names_var_2201614657377291794[3] = { "self", "expr", "index" };
VarInfo __struct_info__1e8db4ddc1444e12_field_88 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__af63eb4c86020609, nullptr, (TypeInfo **)__type_info__6caf569fc5ada20f_arg_types_var_2201614657377291794, __type_info__6caf569fc5ada20f_arg_names_var_2201614657377291794, 3, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<ExprAt> const ,smart_ptr_raw<Expression> const ))>::size, UINT64_C(0x6caf569fc5ada20f), "preVisitExprAtIndex", offsetof(ast::AstVisitor,preVisitExprAtIndex), 0 };
TypeInfo * __type_info__415c6fcc77e22573_arg_types_var_2201614657377291794[2] = { &__type_info__21586ce84f433a21, &__type_info__b5e62a55ec68b6b5 };
const char * __type_info__415c6fcc77e22573_arg_names_var_2201614657377291794[2] = { "self", "expr" };
VarInfo __struct_info__1e8db4ddc1444e12_field_89 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__af63eb4c86020609, nullptr, (TypeInfo **)__type_info__415c6fcc77e22573_arg_types_var_2201614657377291794, __type_info__415c6fcc77e22573_arg_names_var_2201614657377291794, 2, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<ExprSafeAt> const ))>::size, UINT64_C(0x415c6fcc77e22573), "preVisitExprSafeAt", offsetof(ast::AstVisitor,preVisitExprSafeAt), 0 };
TypeInfo * __type_info__f3484371ddf5f3ea_arg_types_var_2201614657377291794[2] = { &__type_info__21586ce84f433a21, &__type_info__b5e62a55ec68b6b5 };
const char * __type_info__f3484371ddf5f3ea_arg_names_var_2201614657377291794[2] = { "self", "expr" };
VarInfo __struct_info__1e8db4ddc1444e12_field_90 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__6636442e03391ebf, nullptr, (TypeInfo **)__type_info__f3484371ddf5f3ea_arg_types_var_2201614657377291794, __type_info__f3484371ddf5f3ea_arg_names_var_2201614657377291794, 2, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((smart_ptr_raw<Expression>,ast::AstVisitor,smart_ptr_raw<ExprSafeAt> const ))>::size, UINT64_C(0xf3484371ddf5f3ea), "visitExprSafeAt", offsetof(ast::AstVisitor,visitExprSafeAt), 0 };
TypeInfo * __type_info__452510e5117043d2_arg_types_var_2201614657377291794[3] = { &__type_info__21586ce84f433a21, &__type_info__b5e62a55ec68b6b5, &__type_info__98064c57b4bcca5a };
const char * __type_info__452510e5117043d2_arg_names_var_2201614657377291794[3] = { "self", "expr", "index" };
VarInfo __struct_info__1e8db4ddc1444e12_field_91 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__af63eb4c86020609, nullptr, (TypeInfo **)__type_info__452510e5117043d2_arg_types_var_2201614657377291794, __type_info__452510e5117043d2_arg_names_var_2201614657377291794, 3, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<ExprSafeAt> const ,smart_ptr_raw<Expression> const ))>::size, UINT64_C(0x452510e5117043d2), "preVisitExprSafeAtIndex", offsetof(ast::AstVisitor,preVisitExprSafeAtIndex), 0 };
TypeInfo * __type_info__363c70bc53f641c8_arg_types_var_2201614657377291794[2] = { &__type_info__21586ce84f433a21, &__type_info__8a5e2edb26418a2a };
const char * __type_info__363c70bc53f641c8_arg_names_var_2201614657377291794[2] = { "self", "expr" };
VarInfo __struct_info__1e8db4ddc1444e12_field_92 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__af63eb4c86020609, nullptr, (TypeInfo **)__type_info__363c70bc53f641c8_arg_types_var_2201614657377291794, __type_info__363c70bc53f641c8_arg_names_var_2201614657377291794, 2, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<ExprIs> const ))>::size, UINT64_C(0x363c70bc53f641c8), "preVisitExprIs", offsetof(ast::AstVisitor,preVisitExprIs), 0 };
TypeInfo * __type_info__82bdb4937d781651_arg_types_var_2201614657377291794[2] = { &__type_info__21586ce84f433a21, &__type_info__8a5e2edb26418a2a };
const char * __type_info__82bdb4937d781651_arg_names_var_2201614657377291794[2] = { "self", "expr" };
VarInfo __struct_info__1e8db4ddc1444e12_field_93 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__6636442e03391ebf, nullptr, (TypeInfo **)__type_info__82bdb4937d781651_arg_types_var_2201614657377291794, __type_info__82bdb4937d781651_arg_names_var_2201614657377291794, 2, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((smart_ptr_raw<Expression>,ast::AstVisitor,smart_ptr_raw<ExprIs> const ))>::size, UINT64_C(0x82bdb4937d781651), "visitExprIs", offsetof(ast::AstVisitor,visitExprIs), 0 };
TypeInfo * __type_info__eda32c89381565ec_arg_types_var_2201614657377291794[3] = { &__type_info__21586ce84f433a21, &__type_info__8a5e2edb26418a2a, &__type_info__defb2f7795e0cf8c };
const char * __type_info__eda32c89381565ec_arg_names_var_2201614657377291794[3] = { "self", "expr", "typeDecl" };
VarInfo __struct_info__1e8db4ddc1444e12_field_94 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__af63eb4c86020609, nullptr, (TypeInfo **)__type_info__eda32c89381565ec_arg_types_var_2201614657377291794, __type_info__eda32c89381565ec_arg_names_var_2201614657377291794, 3, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<ExprIs> const ,smart_ptr_raw<TypeDecl> const ))>::size, UINT64_C(0xeda32c89381565ec), "preVisitExprIsType", offsetof(ast::AstVisitor,preVisitExprIsType), 0 };
TypeInfo * __type_info__14d78a02a2d949d8_arg_types_var_2201614657377291794[2] = { &__type_info__21586ce84f433a21, &__type_info__c5915ffba474f7fe };
const char * __type_info__14d78a02a2d949d8_arg_names_var_2201614657377291794[2] = { "self", "expr" };
VarInfo __struct_info__1e8db4ddc1444e12_field_95 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__af63eb4c86020609, nullptr, (TypeInfo **)__type_info__14d78a02a2d949d8_arg_types_var_2201614657377291794, __type_info__14d78a02a2d949d8_arg_names_var_2201614657377291794, 2, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<ExprOp2> const ))>::size, UINT64_C(0x14d78a02a2d949d8), "preVisitExprOp2", offsetof(ast::AstVisitor,preVisitExprOp2), 0 };
TypeInfo * __type_info__974fb1938f193138_arg_types_var_2201614657377291794[2] = { &__type_info__21586ce84f433a21, &__type_info__c5915ffba474f7fe };
const char * __type_info__974fb1938f193138_arg_names_var_2201614657377291794[2] = { "self", "expr" };
VarInfo __struct_info__1e8db4ddc1444e12_field_96 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__6636442e03391ebf, nullptr, (TypeInfo **)__type_info__974fb1938f193138_arg_types_var_2201614657377291794, __type_info__974fb1938f193138_arg_names_var_2201614657377291794, 2, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((smart_ptr_raw<Expression>,ast::AstVisitor,smart_ptr_raw<ExprOp2> const ))>::size, UINT64_C(0x974fb1938f193138), "visitExprOp2", offsetof(ast::AstVisitor,visitExprOp2), 0 };
TypeInfo * __type_info__2bce2565f2557691_arg_types_var_2201614657377291794[3] = { &__type_info__21586ce84f433a21, &__type_info__c5915ffba474f7fe, &__type_info__98064c57b4bcca5a };
const char * __type_info__2bce2565f2557691_arg_names_var_2201614657377291794[3] = { "self", "expr", "right" };
VarInfo __struct_info__1e8db4ddc1444e12_field_97 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__af63eb4c86020609, nullptr, (TypeInfo **)__type_info__2bce2565f2557691_arg_types_var_2201614657377291794, __type_info__2bce2565f2557691_arg_names_var_2201614657377291794, 3, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<ExprOp2> const ,smart_ptr_raw<Expression> const ))>::size, UINT64_C(0x2bce2565f2557691), "preVisitExprOp2Right", offsetof(ast::AstVisitor,preVisitExprOp2Right), 0 };
TypeInfo * __type_info__14d78b02a2d94b8b_arg_types_var_2201614657377291794[2] = { &__type_info__21586ce84f433a21, &__type_info__ca2136fbaac99425 };
const char * __type_info__14d78b02a2d94b8b_arg_names_var_2201614657377291794[2] = { "self", "expr" };
VarInfo __struct_info__1e8db4ddc1444e12_field_98 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__af63eb4c86020609, nullptr, (TypeInfo **)__type_info__14d78b02a2d94b8b_arg_types_var_2201614657377291794, __type_info__14d78b02a2d94b8b_arg_names_var_2201614657377291794, 2, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<ExprOp3> const ))>::size, UINT64_C(0x14d78b02a2d94b8b), "preVisitExprOp3", offsetof(ast::AstVisitor,preVisitExprOp3), 0 };
TypeInfo * __type_info__974eb1938f177e38_arg_types_var_2201614657377291794[2] = { &__type_info__21586ce84f433a21, &__type_info__ca2136fbaac99425 };
const char * __type_info__974eb1938f177e38_arg_names_var_2201614657377291794[2] = { "self", "expr" };
VarInfo __struct_info__1e8db4ddc1444e12_field_99 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__6636442e03391ebf, nullptr, (TypeInfo **)__type_info__974eb1938f177e38_arg_types_var_2201614657377291794, __type_info__974eb1938f177e38_arg_names_var_2201614657377291794, 2, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((smart_ptr_raw<Expression>,ast::AstVisitor,smart_ptr_raw<ExprOp3> const ))>::size, UINT64_C(0x974eb1938f177e38), "visitExprOp3", offsetof(ast::AstVisitor,visitExprOp3), 0 };
TypeInfo * __type_info__fab868f914151ffa_arg_types_var_2201614657377291794[3] = { &__type_info__21586ce84f433a21, &__type_info__ca2136fbaac99425, &__type_info__98064c57b4bcca5a };
const char * __type_info__fab868f914151ffa_arg_names_var_2201614657377291794[3] = { "self", "expr", "left" };
VarInfo __struct_info__1e8db4ddc1444e12_field_100 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__af63eb4c86020609, nullptr, (TypeInfo **)__type_info__fab868f914151ffa_arg_types_var_2201614657377291794, __type_info__fab868f914151ffa_arg_names_var_2201614657377291794, 3, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<ExprOp3> const ,smart_ptr_raw<Expression> const ))>::size, UINT64_C(0xfab868f914151ffa), "preVisitExprOp3Left", offsetof(ast::AstVisitor,preVisitExprOp3Left), 0 };
TypeInfo * __type_info__28a45465ed4640ea_arg_types_var_2201614657377291794[3] = { &__type_info__21586ce84f433a21, &__type_info__ca2136fbaac99425, &__type_info__98064c57b4bcca5a };
const char * __type_info__28a45465ed4640ea_arg_names_var_2201614657377291794[3] = { "self", "expr", "right" };
VarInfo __struct_info__1e8db4ddc1444e12_field_101 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__af63eb4c86020609, nullptr, (TypeInfo **)__type_info__28a45465ed4640ea_arg_types_var_2201614657377291794, __type_info__28a45465ed4640ea_arg_names_var_2201614657377291794, 3, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<ExprOp3> const ,smart_ptr_raw<Expression> const ))>::size, UINT64_C(0x28a45465ed4640ea), "preVisitExprOp3Right", offsetof(ast::AstVisitor,preVisitExprOp3Right), 0 };
TypeInfo * __type_info__2d81bedb489517e7_arg_types_var_2201614657377291794[2] = { &__type_info__21586ce84f433a21, &__type_info__350b375c34e0c48a };
const char * __type_info__2d81bedb489517e7_arg_names_var_2201614657377291794[2] = { "self", "expr" };
VarInfo __struct_info__1e8db4ddc1444e12_field_102 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__af63df4c8601f1a5, nullptr, (TypeInfo **)__type_info__2d81bedb489517e7_arg_types_var_2201614657377291794, __type_info__2d81bedb489517e7_arg_names_var_2201614657377291794, 2, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((bool,ast::AstVisitor,smart_ptr_raw<ExprCopy> const ))>::size, UINT64_C(0x2d81bedb489517e7), "isRightFirstExprCopy", offsetof(ast::AstVisitor,isRightFirstExprCopy), 0 };
TypeInfo * __type_info__7df04402fc0efcd2_arg_types_var_2201614657377291794[2] = { &__type_info__21586ce84f433a21, &__type_info__350b375c34e0c48a };
const char * __type_info__7df04402fc0efcd2_arg_names_var_2201614657377291794[2] = { "self", "expr" };
VarInfo __struct_info__1e8db4ddc1444e12_field_103 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__af63eb4c86020609, nullptr, (TypeInfo **)__type_info__7df04402fc0efcd2_arg_types_var_2201614657377291794, __type_info__7df04402fc0efcd2_arg_names_var_2201614657377291794, 2, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<ExprCopy> const ))>::size, UINT64_C(0x7df04402fc0efcd2), "preVisitExprCopy", offsetof(ast::AstVisitor,preVisitExprCopy), 0 };
TypeInfo * __type_info__9c4706ceb88bb6a4_arg_types_var_2201614657377291794[2] = { &__type_info__21586ce84f433a21, &__type_info__350b375c34e0c48a };
const char * __type_info__9c4706ceb88bb6a4_arg_names_var_2201614657377291794[2] = { "self", "expr" };
VarInfo __struct_info__1e8db4ddc1444e12_field_104 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__6636442e03391ebf, nullptr, (TypeInfo **)__type_info__9c4706ceb88bb6a4_arg_types_var_2201614657377291794, __type_info__9c4706ceb88bb6a4_arg_names_var_2201614657377291794, 2, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((smart_ptr_raw<Expression>,ast::AstVisitor,smart_ptr_raw<ExprCopy> const ))>::size, UINT64_C(0x9c4706ceb88bb6a4), "visitExprCopy", offsetof(ast::AstVisitor,visitExprCopy), 0 };
TypeInfo * __type_info__cd5d0594bbd31183_arg_types_var_2201614657377291794[3] = { &__type_info__21586ce84f433a21, &__type_info__350b375c34e0c48a, &__type_info__98064c57b4bcca5a };
const char * __type_info__cd5d0594bbd31183_arg_names_var_2201614657377291794[3] = { "self", "expr", "right" };
VarInfo __struct_info__1e8db4ddc1444e12_field_105 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__af63eb4c86020609, nullptr, (TypeInfo **)__type_info__cd5d0594bbd31183_arg_types_var_2201614657377291794, __type_info__cd5d0594bbd31183_arg_names_var_2201614657377291794, 3, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<ExprCopy> const ,smart_ptr_raw<Expression> const ))>::size, UINT64_C(0xcd5d0594bbd31183), "preVisitExprCopyRight", offsetof(ast::AstVisitor,preVisitExprCopyRight), 0 };
TypeInfo * __type_info__2c95acdb472c618f_arg_types_var_2201614657377291794[2] = { &__type_info__21586ce84f433a21, &__type_info__c19751d6d5da74e2 };
const char * __type_info__2c95acdb472c618f_arg_names_var_2201614657377291794[2] = { "self", "expr" };
VarInfo __struct_info__1e8db4ddc1444e12_field_106 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__af63df4c8601f1a5, nullptr, (TypeInfo **)__type_info__2c95acdb472c618f_arg_types_var_2201614657377291794, __type_info__2c95acdb472c618f_arg_names_var_2201614657377291794, 2, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((bool,ast::AstVisitor,smart_ptr_raw<ExprMove> const ))>::size, UINT64_C(0x2c95acdb472c618f), "isRightFirstExprMove", offsetof(ast::AstVisitor,isRightFirstExprMove), 0 };
TypeInfo * __type_info__7e083e02fc1adb06_arg_types_var_2201614657377291794[2] = { &__type_info__21586ce84f433a21, &__type_info__c19751d6d5da74e2 };
const char * __type_info__7e083e02fc1adb06_arg_names_var_2201614657377291794[2] = { "self", "expr" };
VarInfo __struct_info__1e8db4ddc1444e12_field_107 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__af63eb4c86020609, nullptr, (TypeInfo **)__type_info__7e083e02fc1adb06_arg_types_var_2201614657377291794, __type_info__7e083e02fc1adb06_arg_names_var_2201614657377291794, 2, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<ExprMove> const ))>::size, UINT64_C(0x7e083e02fc1adb06), "preVisitExprMove", offsetof(ast::AstVisitor,preVisitExprMove), 0 };
TypeInfo * __type_info__fe090ab26f161170_arg_types_var_2201614657377291794[2] = { &__type_info__21586ce84f433a21, &__type_info__c19751d6d5da74e2 };
const char * __type_info__fe090ab26f161170_arg_names_var_2201614657377291794[2] = { "self", "expr" };
VarInfo __struct_info__1e8db4ddc1444e12_field_108 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__6636442e03391ebf, nullptr, (TypeInfo **)__type_info__fe090ab26f161170_arg_types_var_2201614657377291794, __type_info__fe090ab26f161170_arg_names_var_2201614657377291794, 2, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((smart_ptr_raw<Expression>,ast::AstVisitor,smart_ptr_raw<ExprMove> const ))>::size, UINT64_C(0xfe090ab26f161170), "visitExprMove", offsetof(ast::AstVisitor,visitExprMove), 0 };
TypeInfo * __type_info__eca633024932f86f_arg_types_var_2201614657377291794[3] = { &__type_info__21586ce84f433a21, &__type_info__c19751d6d5da74e2, &__type_info__98064c57b4bcca5a };
const char * __type_info__eca633024932f86f_arg_names_var_2201614657377291794[3] = { "self", "expr", "right" };
VarInfo __struct_info__1e8db4ddc1444e12_field_109 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__af63eb4c86020609, nullptr, (TypeInfo **)__type_info__eca633024932f86f_arg_types_var_2201614657377291794, __type_info__eca633024932f86f_arg_names_var_2201614657377291794, 3, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<ExprMove> const ,smart_ptr_raw<Expression> const ))>::size, UINT64_C(0xeca633024932f86f), "preVisitExprMoveRight", offsetof(ast::AstVisitor,preVisitExprMoveRight), 0 };
TypeInfo * __type_info__e8e0d09fd41dec39_arg_types_var_2201614657377291794[2] = { &__type_info__21586ce84f433a21, &__type_info__93546827b32c5422 };
const char * __type_info__e8e0d09fd41dec39_arg_names_var_2201614657377291794[2] = { "self", "expr" };
VarInfo __struct_info__1e8db4ddc1444e12_field_110 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__af63df4c8601f1a5, nullptr, (TypeInfo **)__type_info__e8e0d09fd41dec39_arg_types_var_2201614657377291794, __type_info__e8e0d09fd41dec39_arg_names_var_2201614657377291794, 2, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((bool,ast::AstVisitor,smart_ptr_raw<ExprClone> const ))>::size, UINT64_C(0xe8e0d09fd41dec39), "isRightFirstExprClone", offsetof(ast::AstVisitor,isRightFirstExprClone), 0 };
TypeInfo * __type_info__f5c258045726d71a_arg_types_var_2201614657377291794[2] = { &__type_info__21586ce84f433a21, &__type_info__93546827b32c5422 };
const char * __type_info__f5c258045726d71a_arg_names_var_2201614657377291794[2] = { "self", "expr" };
VarInfo __struct_info__1e8db4ddc1444e12_field_111 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__af63eb4c86020609, nullptr, (TypeInfo **)__type_info__f5c258045726d71a_arg_types_var_2201614657377291794, __type_info__f5c258045726d71a_arg_names_var_2201614657377291794, 2, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<ExprClone> const ))>::size, UINT64_C(0xf5c258045726d71a), "preVisitExprClone", offsetof(ast::AstVisitor,preVisitExprClone), 0 };
TypeInfo * __type_info__ba7813ced1e54836_arg_types_var_2201614657377291794[2] = { &__type_info__21586ce84f433a21, &__type_info__93546827b32c5422 };
const char * __type_info__ba7813ced1e54836_arg_names_var_2201614657377291794[2] = { "self", "expr" };
VarInfo __struct_info__1e8db4ddc1444e12_field_112 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__6636442e03391ebf, nullptr, (TypeInfo **)__type_info__ba7813ced1e54836_arg_types_var_2201614657377291794, __type_info__ba7813ced1e54836_arg_names_var_2201614657377291794, 2, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((smart_ptr_raw<Expression>,ast::AstVisitor,smart_ptr_raw<ExprClone> const ))>::size, UINT64_C(0xba7813ced1e54836), "visitExprClone", offsetof(ast::AstVisitor,visitExprClone), 0 };
TypeInfo * __type_info__6e8908b5e9b654b3_arg_types_var_2201614657377291794[3] = { &__type_info__21586ce84f433a21, &__type_info__93546827b32c5422, &__type_info__98064c57b4bcca5a };
const char * __type_info__6e8908b5e9b654b3_arg_names_var_2201614657377291794[3] = { "self", "expr", "right" };
VarInfo __struct_info__1e8db4ddc1444e12_field_113 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__af63eb4c86020609, nullptr, (TypeInfo **)__type_info__6e8908b5e9b654b3_arg_types_var_2201614657377291794, __type_info__6e8908b5e9b654b3_arg_names_var_2201614657377291794, 3, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<ExprClone> const ,smart_ptr_raw<Expression> const ))>::size, UINT64_C(0x6e8908b5e9b654b3), "preVisitExprCloneRight", offsetof(ast::AstVisitor,preVisitExprCloneRight), 0 };
TypeInfo * __type_info__591a1931dbf740b7_arg_types_var_2201614657377291794[2] = { &__type_info__21586ce84f433a21, &__type_info__83c768ad9b3f81ea };
const char * __type_info__591a1931dbf740b7_arg_names_var_2201614657377291794[2] = { "self", "expr" };
VarInfo __struct_info__1e8db4ddc1444e12_field_114 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__af63df4c8601f1a5, nullptr, (TypeInfo **)__type_info__591a1931dbf740b7_arg_types_var_2201614657377291794, __type_info__591a1931dbf740b7_arg_names_var_2201614657377291794, 2, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((bool,ast::AstVisitor,smart_ptr_raw<ExprAssume> const ))>::size, UINT64_C(0x591a1931dbf740b7), "canVisitWithAliasSubexpression", offsetof(ast::AstVisitor,canVisitWithAliasSubexpression), 0 };
TypeInfo * __type_info__f36af989502c64dc_arg_types_var_2201614657377291794[2] = { &__type_info__21586ce84f433a21, &__type_info__83c768ad9b3f81ea };
const char * __type_info__f36af989502c64dc_arg_names_var_2201614657377291794[2] = { "self", "expr" };
VarInfo __struct_info__1e8db4ddc1444e12_field_115 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__af63eb4c86020609, nullptr, (TypeInfo **)__type_info__f36af989502c64dc_arg_types_var_2201614657377291794, __type_info__f36af989502c64dc_arg_names_var_2201614657377291794, 2, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<ExprAssume> const ))>::size, UINT64_C(0xf36af989502c64dc), "preVisitExprAssume", offsetof(ast::AstVisitor,preVisitExprAssume), 0 };
TypeInfo * __type_info__bd93646199fbaf0b_arg_types_var_2201614657377291794[2] = { &__type_info__21586ce84f433a21, &__type_info__83c768ad9b3f81ea };
const char * __type_info__bd93646199fbaf0b_arg_names_var_2201614657377291794[2] = { "self", "expr" };
VarInfo __struct_info__1e8db4ddc1444e12_field_116 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__6636442e03391ebf, nullptr, (TypeInfo **)__type_info__bd93646199fbaf0b_arg_types_var_2201614657377291794, __type_info__bd93646199fbaf0b_arg_names_var_2201614657377291794, 2, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((smart_ptr_raw<Expression>,ast::AstVisitor,smart_ptr_raw<ExprAssume> const ))>::size, UINT64_C(0xbd93646199fbaf0b), "visitExprAssume", offsetof(ast::AstVisitor,visitExprAssume), 0 };
TypeInfo * __type_info__69e44002eb742df2_arg_types_var_2201614657377291794[2] = { &__type_info__21586ce84f433a21, &__type_info__c758d466d1a06ae2 };
const char * __type_info__69e44002eb742df2_arg_names_var_2201614657377291794[2] = { "self", "expr" };
VarInfo __struct_info__1e8db4ddc1444e12_field_117 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__af63eb4c86020609, nullptr, (TypeInfo **)__type_info__69e44002eb742df2_arg_types_var_2201614657377291794, __type_info__69e44002eb742df2_arg_names_var_2201614657377291794, 2, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<ExprWith> const ))>::size, UINT64_C(0x69e44002eb742df2), "preVisitExprWith", offsetof(ast::AstVisitor,preVisitExprWith), 0 };
TypeInfo * __type_info__c356f39314340551_arg_types_var_2201614657377291794[2] = { &__type_info__21586ce84f433a21, &__type_info__c758d466d1a06ae2 };
const char * __type_info__c356f39314340551_arg_names_var_2201614657377291794[2] = { "self", "expr" };
VarInfo __struct_info__1e8db4ddc1444e12_field_118 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__6636442e03391ebf, nullptr, (TypeInfo **)__type_info__c356f39314340551_arg_types_var_2201614657377291794, __type_info__c356f39314340551_arg_names_var_2201614657377291794, 2, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((smart_ptr_raw<Expression>,ast::AstVisitor,smart_ptr_raw<ExprWith> const ))>::size, UINT64_C(0xc356f39314340551), "visitExprWith", offsetof(ast::AstVisitor,visitExprWith), 0 };
TypeInfo * __type_info__f4d0322851dbbd1c_arg_types_var_2201614657377291794[3] = { &__type_info__21586ce84f433a21, &__type_info__c758d466d1a06ae2, &__type_info__98064c57b4bcca5a };
const char * __type_info__f4d0322851dbbd1c_arg_names_var_2201614657377291794[3] = { "self", "expr", "right" };
VarInfo __struct_info__1e8db4ddc1444e12_field_119 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__af63eb4c86020609, nullptr, (TypeInfo **)__type_info__f4d0322851dbbd1c_arg_types_var_2201614657377291794, __type_info__f4d0322851dbbd1c_arg_names_var_2201614657377291794, 3, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<ExprWith> const ,smart_ptr_raw<Expression> const ))>::size, UINT64_C(0xf4d0322851dbbd1c), "preVisitExprWithBody", offsetof(ast::AstVisitor,preVisitExprWithBody), 0 };
TypeInfo * __type_info__146b37efc8a0690c_arg_types_var_2201614657377291794[2] = { &__type_info__21586ce84f433a21, &__type_info__9cac32b4050a2fb8 };
const char * __type_info__146b37efc8a0690c_arg_names_var_2201614657377291794[2] = { "self", "expr" };
VarInfo __struct_info__1e8db4ddc1444e12_field_120 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__af63eb4c86020609, nullptr, (TypeInfo **)__type_info__146b37efc8a0690c_arg_types_var_2201614657377291794, __type_info__146b37efc8a0690c_arg_names_var_2201614657377291794, 2, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<ExprWhile> const ))>::size, UINT64_C(0x146b37efc8a0690c), "preVisitExprWhile", offsetof(ast::AstVisitor,preVisitExprWhile), 0 };
TypeInfo * __type_info__1f78119362cddb74_arg_types_var_2201614657377291794[2] = { &__type_info__21586ce84f433a21, &__type_info__9cac32b4050a2fb8 };
const char * __type_info__1f78119362cddb74_arg_names_var_2201614657377291794[2] = { "self", "expr" };
VarInfo __struct_info__1e8db4ddc1444e12_field_121 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__6636442e03391ebf, nullptr, (TypeInfo **)__type_info__1f78119362cddb74_arg_types_var_2201614657377291794, __type_info__1f78119362cddb74_arg_names_var_2201614657377291794, 2, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((smart_ptr_raw<Expression>,ast::AstVisitor,smart_ptr_raw<ExprWhile> const ))>::size, UINT64_C(0x1f78119362cddb74), "visitExprWhile", offsetof(ast::AstVisitor,visitExprWhile), 0 };
TypeInfo * __type_info__1aa99d5f0bdf07c0_arg_types_var_2201614657377291794[3] = { &__type_info__21586ce84f433a21, &__type_info__9cac32b4050a2fb8, &__type_info__98064c57b4bcca5a };
const char * __type_info__1aa99d5f0bdf07c0_arg_names_var_2201614657377291794[3] = { "self", "expr", "right" };
VarInfo __struct_info__1e8db4ddc1444e12_field_122 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__af63eb4c86020609, nullptr, (TypeInfo **)__type_info__1aa99d5f0bdf07c0_arg_types_var_2201614657377291794, __type_info__1aa99d5f0bdf07c0_arg_names_var_2201614657377291794, 3, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<ExprWhile> const ,smart_ptr_raw<Expression> const ))>::size, UINT64_C(0x1aa99d5f0bdf07c0), "preVisitExprWhileBody", offsetof(ast::AstVisitor,preVisitExprWhileBody), 0 };
TypeInfo * __type_info__6c007322603a901e_arg_types_var_2201614657377291794[2] = { &__type_info__21586ce84f433a21, &__type_info__c1c6f9bc0741f232 };
const char * __type_info__6c007322603a901e_arg_names_var_2201614657377291794[2] = { "self", "expr" };
VarInfo __struct_info__1e8db4ddc1444e12_field_123 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__af63eb4c86020609, nullptr, (TypeInfo **)__type_info__6c007322603a901e_arg_types_var_2201614657377291794, __type_info__6c007322603a901e_arg_names_var_2201614657377291794, 2, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<ExprTryCatch> const ))>::size, UINT64_C(0x6c007322603a901e), "preVisitExprTryCatch", offsetof(ast::AstVisitor,preVisitExprTryCatch), 0 };
TypeInfo * __type_info__ee20777da5e5bc33_arg_types_var_2201614657377291794[2] = { &__type_info__21586ce84f433a21, &__type_info__c1c6f9bc0741f232 };
const char * __type_info__ee20777da5e5bc33_arg_names_var_2201614657377291794[2] = { "self", "expr" };
VarInfo __struct_info__1e8db4ddc1444e12_field_124 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__6636442e03391ebf, nullptr, (TypeInfo **)__type_info__ee20777da5e5bc33_arg_types_var_2201614657377291794, __type_info__ee20777da5e5bc33_arg_names_var_2201614657377291794, 2, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((smart_ptr_raw<Expression>,ast::AstVisitor,smart_ptr_raw<ExprTryCatch> const ))>::size, UINT64_C(0xee20777da5e5bc33), "visitExprTryCatch", offsetof(ast::AstVisitor,visitExprTryCatch), 0 };
TypeInfo * __type_info__60013666243ecb3_arg_types_var_2201614657377291794[3] = { &__type_info__21586ce84f433a21, &__type_info__c1c6f9bc0741f232, &__type_info__98064c57b4bcca5a };
const char * __type_info__60013666243ecb3_arg_names_var_2201614657377291794[3] = { "self", "expr", "right" };
VarInfo __struct_info__1e8db4ddc1444e12_field_125 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__af63eb4c86020609, nullptr, (TypeInfo **)__type_info__60013666243ecb3_arg_types_var_2201614657377291794, __type_info__60013666243ecb3_arg_names_var_2201614657377291794, 3, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<ExprTryCatch> const ,smart_ptr_raw<Expression> const ))>::size, UINT64_C(0x60013666243ecb3), "preVisitExprTryCatchCatch", offsetof(ast::AstVisitor,preVisitExprTryCatchCatch), 0 };
TypeInfo * __type_info__c51c17bf11ebed33_arg_types_var_2201614657377291794[2] = { &__type_info__21586ce84f433a21, &__type_info__88db72c3eb8c93b1 };
const char * __type_info__c51c17bf11ebed33_arg_names_var_2201614657377291794[2] = { "self", "expr" };
VarInfo __struct_info__1e8db4ddc1444e12_field_126 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__af63eb4c86020609, nullptr, (TypeInfo **)__type_info__c51c17bf11ebed33_arg_types_var_2201614657377291794, __type_info__c51c17bf11ebed33_arg_names_var_2201614657377291794, 2, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<ExprIfThenElse> const ))>::size, UINT64_C(0xc51c17bf11ebed33), "preVisitExprIfThenElse", offsetof(ast::AstVisitor,preVisitExprIfThenElse), 0 };
TypeInfo * __type_info__38c0b8b3a0035f4b_arg_types_var_2201614657377291794[2] = { &__type_info__21586ce84f433a21, &__type_info__88db72c3eb8c93b1 };
const char * __type_info__38c0b8b3a0035f4b_arg_names_var_2201614657377291794[2] = { "self", "expr" };
VarInfo __struct_info__1e8db4ddc1444e12_field_127 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__6636442e03391ebf, nullptr, (TypeInfo **)__type_info__38c0b8b3a0035f4b_arg_types_var_2201614657377291794, __type_info__38c0b8b3a0035f4b_arg_names_var_2201614657377291794, 2, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((smart_ptr_raw<Expression>,ast::AstVisitor,smart_ptr_raw<ExprIfThenElse> const ))>::size, UINT64_C(0x38c0b8b3a0035f4b), "visitExprIfThenElse", offsetof(ast::AstVisitor,visitExprIfThenElse), 0 };
TypeInfo * __type_info__c099ede2b5923b6e_arg_types_var_2201614657377291794[3] = { &__type_info__21586ce84f433a21, &__type_info__88db72c3eb8c93b1, &__type_info__98064c57b4bcca5a };
const char * __type_info__c099ede2b5923b6e_arg_names_var_2201614657377291794[3] = { "self", "expr", "ifBlock" };
VarInfo __struct_info__1e8db4ddc1444e12_field_128 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__af63eb4c86020609, nullptr, (TypeInfo **)__type_info__c099ede2b5923b6e_arg_types_var_2201614657377291794, __type_info__c099ede2b5923b6e_arg_names_var_2201614657377291794, 3, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<ExprIfThenElse> const ,smart_ptr_raw<Expression> const ))>::size, UINT64_C(0xc099ede2b5923b6e), "preVisitExprIfThenElseIfBlock", offsetof(ast::AstVisitor,preVisitExprIfThenElseIfBlock), 0 };
TypeInfo * __type_info__fb77ceef0b6231cd_arg_types_var_2201614657377291794[3] = { &__type_info__21586ce84f433a21, &__type_info__88db72c3eb8c93b1, &__type_info__98064c57b4bcca5a };
const char * __type_info__fb77ceef0b6231cd_arg_names_var_2201614657377291794[3] = { "self", "expr", "elseBlock" };
VarInfo __struct_info__1e8db4ddc1444e12_field_129 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__af63eb4c86020609, nullptr, (TypeInfo **)__type_info__fb77ceef0b6231cd_arg_types_var_2201614657377291794, __type_info__fb77ceef0b6231cd_arg_names_var_2201614657377291794, 3, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<ExprIfThenElse> const ,smart_ptr_raw<Expression> const ))>::size, UINT64_C(0xfb77ceef0b6231cd), "preVisitExprIfThenElseElseBlock", offsetof(ast::AstVisitor,preVisitExprIfThenElseElseBlock), 0 };
TypeInfo * __type_info__7e1a4402fc47eb05_arg_types_var_2201614657377291794[2] = { &__type_info__21586ce84f433a21, &__type_info__9745884abdafbe87 };
const char * __type_info__7e1a4402fc47eb05_arg_names_var_2201614657377291794[2] = { "self", "expr" };
VarInfo __struct_info__1e8db4ddc1444e12_field_130 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__af63eb4c86020609, nullptr, (TypeInfo **)__type_info__7e1a4402fc47eb05_arg_types_var_2201614657377291794, __type_info__7e1a4402fc47eb05_arg_names_var_2201614657377291794, 2, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<ExprFor> const ))>::size, UINT64_C(0x7e1a4402fc47eb05), "preVisitExprFor", offsetof(ast::AstVisitor,preVisitExprFor), 0 };
TypeInfo * __type_info__b585c093a8729bb5_arg_types_var_2201614657377291794[2] = { &__type_info__21586ce84f433a21, &__type_info__9745884abdafbe87 };
const char * __type_info__b585c093a8729bb5_arg_names_var_2201614657377291794[2] = { "self", "expr" };
VarInfo __struct_info__1e8db4ddc1444e12_field_131 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__6636442e03391ebf, nullptr, (TypeInfo **)__type_info__b585c093a8729bb5_arg_types_var_2201614657377291794, __type_info__b585c093a8729bb5_arg_names_var_2201614657377291794, 2, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((smart_ptr_raw<Expression>,ast::AstVisitor,smart_ptr_raw<ExprFor> const ))>::size, UINT64_C(0xb585c093a8729bb5), "visitExprFor", offsetof(ast::AstVisitor,visitExprFor), 0 };
TypeInfo * __type_info__bb6c0827af8b5346_arg_types_var_2201614657377291794[4] = { &__type_info__21586ce84f433a21, &__type_info__9745884abdafbe87, &__type_info__a3a6bcfebaf8fcd8, &__type_info__af81fe4c86352052 };
const char * __type_info__bb6c0827af8b5346_arg_names_var_2201614657377291794[4] = { "self", "expr", "svar", "last" };
VarInfo __struct_info__1e8db4ddc1444e12_field_132 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__af63eb4c86020609, nullptr, (TypeInfo **)__type_info__bb6c0827af8b5346_arg_types_var_2201614657377291794, __type_info__bb6c0827af8b5346_arg_names_var_2201614657377291794, 4, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<ExprFor> const ,smart_ptr_raw<Variable> const ,bool))>::size, UINT64_C(0xbb6c0827af8b5346), "preVisitExprForVariable", offsetof(ast::AstVisitor,preVisitExprForVariable), 0 };
TypeInfo * __type_info__2f6c89bb2174e0d4_arg_types_var_2201614657377291794[4] = { &__type_info__21586ce84f433a21, &__type_info__9745884abdafbe87, &__type_info__a3a6bcfebaf8fcd8, &__type_info__af81fe4c86352052 };
const char * __type_info__2f6c89bb2174e0d4_arg_names_var_2201614657377291794[4] = { "self", "expr", "svar", "last" };
VarInfo __struct_info__1e8db4ddc1444e12_field_133 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__4d5fdda373bcfbd1, nullptr, (TypeInfo **)__type_info__2f6c89bb2174e0d4_arg_types_var_2201614657377291794, __type_info__2f6c89bb2174e0d4_arg_names_var_2201614657377291794, 4, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((smart_ptr_raw<Variable>,ast::AstVisitor,smart_ptr_raw<ExprFor> const ,smart_ptr_raw<Variable> const ,bool))>::size, UINT64_C(0x2f6c89bb2174e0d4), "visitExprForVariable", offsetof(ast::AstVisitor,visitExprForVariable), 0 };
TypeInfo * __type_info__ce17076d9f8cf753_arg_types_var_2201614657377291794[4] = { &__type_info__21586ce84f433a21, &__type_info__9745884abdafbe87, &__type_info__98064c57b4bcca5a, &__type_info__af81fe4c86352052 };
const char * __type_info__ce17076d9f8cf753_arg_names_var_2201614657377291794[4] = { "self", "expr", "source", "last" };
VarInfo __struct_info__1e8db4ddc1444e12_field_134 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__af63eb4c86020609, nullptr, (TypeInfo **)__type_info__ce17076d9f8cf753_arg_types_var_2201614657377291794, __type_info__ce17076d9f8cf753_arg_names_var_2201614657377291794, 4, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<ExprFor> const ,smart_ptr_raw<Expression> const ,bool))>::size, UINT64_C(0xce17076d9f8cf753), "preVisitExprForSource", offsetof(ast::AstVisitor,preVisitExprForSource), 0 };
TypeInfo * __type_info__bcee3052ac4d0412_arg_types_var_2201614657377291794[4] = { &__type_info__21586ce84f433a21, &__type_info__9745884abdafbe87, &__type_info__98064c57b4bcca5a, &__type_info__af81fe4c86352052 };
const char * __type_info__bcee3052ac4d0412_arg_names_var_2201614657377291794[4] = { "self", "expr", "source", "last" };
VarInfo __struct_info__1e8db4ddc1444e12_field_135 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__6636442e03391ebf, nullptr, (TypeInfo **)__type_info__bcee3052ac4d0412_arg_types_var_2201614657377291794, __type_info__bcee3052ac4d0412_arg_names_var_2201614657377291794, 4, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((smart_ptr_raw<Expression>,ast::AstVisitor,smart_ptr_raw<ExprFor> const ,smart_ptr_raw<Expression> const ,bool))>::size, UINT64_C(0xbcee3052ac4d0412), "visitExprForSource", offsetof(ast::AstVisitor,visitExprForSource), 0 };
TypeInfo * __type_info__bea7e44555360f20_arg_types_var_2201614657377291794[2] = { &__type_info__21586ce84f433a21, &__type_info__9745884abdafbe87 };
const char * __type_info__bea7e44555360f20_arg_names_var_2201614657377291794[2] = { "self", "expr" };
VarInfo __struct_info__1e8db4ddc1444e12_field_136 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__af63eb4c86020609, nullptr, (TypeInfo **)__type_info__bea7e44555360f20_arg_types_var_2201614657377291794, __type_info__bea7e44555360f20_arg_names_var_2201614657377291794, 2, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<ExprFor> const ))>::size, UINT64_C(0xbea7e44555360f20), "preVisitExprForStack", offsetof(ast::AstVisitor,preVisitExprForStack), 0 };
TypeInfo * __type_info__b6a2068ef526c805_arg_types_var_2201614657377291794[2] = { &__type_info__21586ce84f433a21, &__type_info__9745884abdafbe87 };
const char * __type_info__b6a2068ef526c805_arg_names_var_2201614657377291794[2] = { "self", "expr" };
VarInfo __struct_info__1e8db4ddc1444e12_field_137 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__af63eb4c86020609, nullptr, (TypeInfo **)__type_info__b6a2068ef526c805_arg_types_var_2201614657377291794, __type_info__b6a2068ef526c805_arg_names_var_2201614657377291794, 2, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<ExprFor> const ))>::size, UINT64_C(0xb6a2068ef526c805), "preVisitExprForBody", offsetof(ast::AstVisitor,preVisitExprForBody), 0 };
TypeInfo * __type_info__305131e8c4628f64_arg_types_var_2201614657377291794[2] = { &__type_info__21586ce84f433a21, &__type_info__4191dbf23146a87e };
const char * __type_info__305131e8c4628f64_arg_names_var_2201614657377291794[2] = { "self", "expr" };
VarInfo __struct_info__1e8db4ddc1444e12_field_138 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__af63eb4c86020609, nullptr, (TypeInfo **)__type_info__305131e8c4628f64_arg_types_var_2201614657377291794, __type_info__305131e8c4628f64_arg_names_var_2201614657377291794, 2, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<ExprMakeVariant> const ))>::size, UINT64_C(0x305131e8c4628f64), "preVisitExprMakeVariant", offsetof(ast::AstVisitor,preVisitExprMakeVariant), 0 };
TypeInfo * __type_info__e1490f83f62810a2_arg_types_var_2201614657377291794[2] = { &__type_info__21586ce84f433a21, &__type_info__4191dbf23146a87e };
const char * __type_info__e1490f83f62810a2_arg_names_var_2201614657377291794[2] = { "self", "expr" };
VarInfo __struct_info__1e8db4ddc1444e12_field_139 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__6636442e03391ebf, nullptr, (TypeInfo **)__type_info__e1490f83f62810a2_arg_types_var_2201614657377291794, __type_info__e1490f83f62810a2_arg_names_var_2201614657377291794, 2, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((smart_ptr_raw<Expression>,ast::AstVisitor,smart_ptr_raw<ExprMakeVariant> const ))>::size, UINT64_C(0xe1490f83f62810a2), "visitExprMakeVariant", offsetof(ast::AstVisitor,visitExprMakeVariant), 0 };
TypeInfo * __type_info__bab2808884e1a301_arg_types_var_2201614657377291794[5] = { &__type_info__21586ce84f433a21, &__type_info__4191dbf23146a87e, &__type_info__af8afe4c86446b52, &__type_info__9a5e492166d49949, &__type_info__af81fe4c86352052 };
const char * __type_info__bab2808884e1a301_arg_names_var_2201614657377291794[5] = { "self", "expr", "index", "decl", "last" };
VarInfo __struct_info__1e8db4ddc1444e12_field_140 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__af63eb4c86020609, nullptr, (TypeInfo **)__type_info__bab2808884e1a301_arg_types_var_2201614657377291794, __type_info__bab2808884e1a301_arg_names_var_2201614657377291794, 5, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<ExprMakeVariant> const ,int32_t,smart_ptr_raw<MakeFieldDecl> const ,bool))>::size, UINT64_C(0xbab2808884e1a301), "preVisitExprMakeVariantField", offsetof(ast::AstVisitor,preVisitExprMakeVariantField), 0 };
TypeInfo * __type_info__2f5a09d014210edd_arg_types_var_2201614657377291794[5] = { &__type_info__21586ce84f433a21, &__type_info__4191dbf23146a87e, &__type_info__af8afe4c86446b52, &__type_info__9a5e492166d49949, &__type_info__af81fe4c86352052 };
const char * __type_info__2f5a09d014210edd_arg_names_var_2201614657377291794[5] = { "self", "expr", "index", "decl", "last" };
VarInfo __struct_info__1e8db4ddc1444e12_field_141 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__c52835f1e7c9ab84, nullptr, (TypeInfo **)__type_info__2f5a09d014210edd_arg_types_var_2201614657377291794, __type_info__2f5a09d014210edd_arg_names_var_2201614657377291794, 5, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((smart_ptr_raw<MakeFieldDecl>,ast::AstVisitor,smart_ptr_raw<ExprMakeVariant> const ,int32_t,smart_ptr_raw<MakeFieldDecl> const ,bool))>::size, UINT64_C(0x2f5a09d014210edd), "visitExprMakeVariantField", offsetof(ast::AstVisitor,visitExprMakeVariantField), 0 };
TypeInfo * __type_info__afd5e182c47c834d_arg_types_var_2201614657377291794[2] = { &__type_info__21586ce84f433a21, &__type_info__5276a743108434eb };
const char * __type_info__afd5e182c47c834d_arg_names_var_2201614657377291794[2] = { "self", "expr" };
VarInfo __struct_info__1e8db4ddc1444e12_field_142 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__af63df4c8601f1a5, nullptr, (TypeInfo **)__type_info__afd5e182c47c834d_arg_types_var_2201614657377291794, __type_info__afd5e182c47c834d_arg_names_var_2201614657377291794, 2, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((bool,ast::AstVisitor,smart_ptr_raw<ExprMakeStruct> const ))>::size, UINT64_C(0xafd5e182c47c834d), "canVisitExprMakeStructBody", offsetof(ast::AstVisitor,canVisitExprMakeStructBody), 0 };
TypeInfo * __type_info__6df9772d1def04b5_arg_types_var_2201614657377291794[3] = { &__type_info__21586ce84f433a21, &__type_info__5276a743108434eb, &__type_info__98064c57b4bcca5a };
const char * __type_info__6df9772d1def04b5_arg_names_var_2201614657377291794[3] = { "self", "expr", "blk" };
VarInfo __struct_info__1e8db4ddc1444e12_field_143 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__af63df4c8601f1a5, nullptr, (TypeInfo **)__type_info__6df9772d1def04b5_arg_types_var_2201614657377291794, __type_info__6df9772d1def04b5_arg_names_var_2201614657377291794, 3, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((bool,ast::AstVisitor,smart_ptr_raw<ExprMakeStruct> const ,smart_ptr_raw<Expression> const ))>::size, UINT64_C(0x6df9772d1def04b5), "canVisitExprMakeStructBlock", offsetof(ast::AstVisitor,canVisitExprMakeStructBlock), 0 };
TypeInfo * __type_info__6c47240f97a09f01_arg_types_var_2201614657377291794[2] = { &__type_info__21586ce84f433a21, &__type_info__5276a743108434eb };
const char * __type_info__6c47240f97a09f01_arg_names_var_2201614657377291794[2] = { "self", "expr" };
VarInfo __struct_info__1e8db4ddc1444e12_field_144 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__af63eb4c86020609, nullptr, (TypeInfo **)__type_info__6c47240f97a09f01_arg_types_var_2201614657377291794, __type_info__6c47240f97a09f01_arg_names_var_2201614657377291794, 2, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<ExprMakeStruct> const ))>::size, UINT64_C(0x6c47240f97a09f01), "preVisitExprMakeStruct", offsetof(ast::AstVisitor,preVisitExprMakeStruct), 0 };
TypeInfo * __type_info__ac390a5ffb883c3b_arg_types_var_2201614657377291794[2] = { &__type_info__21586ce84f433a21, &__type_info__5276a743108434eb };
const char * __type_info__ac390a5ffb883c3b_arg_names_var_2201614657377291794[2] = { "self", "expr" };
VarInfo __struct_info__1e8db4ddc1444e12_field_145 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__6636442e03391ebf, nullptr, (TypeInfo **)__type_info__ac390a5ffb883c3b_arg_types_var_2201614657377291794, __type_info__ac390a5ffb883c3b_arg_names_var_2201614657377291794, 2, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((smart_ptr_raw<Expression>,ast::AstVisitor,smart_ptr_raw<ExprMakeStruct> const ))>::size, UINT64_C(0xac390a5ffb883c3b), "visitExprMakeStruct", offsetof(ast::AstVisitor,visitExprMakeStruct), 0 };
TypeInfo * __type_info__3694ecd9abede4e4_arg_types_var_2201614657377291794[4] = { &__type_info__21586ce84f433a21, &__type_info__5276a743108434eb, &__type_info__af8afe4c86446b52, &__type_info__af81fe4c86352052 };
const char * __type_info__3694ecd9abede4e4_arg_names_var_2201614657377291794[4] = { "self", "expr", "index", "last" };
VarInfo __struct_info__1e8db4ddc1444e12_field_146 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__af63eb4c86020609, nullptr, (TypeInfo **)__type_info__3694ecd9abede4e4_arg_types_var_2201614657377291794, __type_info__3694ecd9abede4e4_arg_names_var_2201614657377291794, 4, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<ExprMakeStruct> const ,int32_t,bool))>::size, UINT64_C(0x3694ecd9abede4e4), "preVisitExprMakeStructIndex", offsetof(ast::AstVisitor,preVisitExprMakeStructIndex), 0 };
TypeInfo * __type_info__467b3460de5445fe_arg_types_var_2201614657377291794[4] = { &__type_info__21586ce84f433a21, &__type_info__5276a743108434eb, &__type_info__af8afe4c86446b52, &__type_info__af81fe4c86352052 };
const char * __type_info__467b3460de5445fe_arg_names_var_2201614657377291794[4] = { "self", "expr", "index", "last" };
VarInfo __struct_info__1e8db4ddc1444e12_field_147 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__af63eb4c86020609, nullptr, (TypeInfo **)__type_info__467b3460de5445fe_arg_types_var_2201614657377291794, __type_info__467b3460de5445fe_arg_names_var_2201614657377291794, 4, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<ExprMakeStruct> const ,int32_t,bool))>::size, UINT64_C(0x467b3460de5445fe), "visitExprMakeStructIndex", offsetof(ast::AstVisitor,visitExprMakeStructIndex), 0 };
TypeInfo * __type_info__8173a7f23281b52c_arg_types_var_2201614657377291794[5] = { &__type_info__21586ce84f433a21, &__type_info__5276a743108434eb, &__type_info__af8afe4c86446b52, &__type_info__9a5e492166d49949, &__type_info__af81fe4c86352052 };
const char * __type_info__8173a7f23281b52c_arg_names_var_2201614657377291794[5] = { "self", "expr", "index", "decl", "last" };
VarInfo __struct_info__1e8db4ddc1444e12_field_148 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__af63eb4c86020609, nullptr, (TypeInfo **)__type_info__8173a7f23281b52c_arg_types_var_2201614657377291794, __type_info__8173a7f23281b52c_arg_names_var_2201614657377291794, 5, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<ExprMakeStruct> const ,int32_t,smart_ptr_raw<MakeFieldDecl> const ,bool))>::size, UINT64_C(0x8173a7f23281b52c), "preVisitExprMakeStructField", offsetof(ast::AstVisitor,preVisitExprMakeStructField), 0 };
TypeInfo * __type_info__87544b21d0bdc68e_arg_types_var_2201614657377291794[5] = { &__type_info__21586ce84f433a21, &__type_info__5276a743108434eb, &__type_info__af8afe4c86446b52, &__type_info__9a5e492166d49949, &__type_info__af81fe4c86352052 };
const char * __type_info__87544b21d0bdc68e_arg_names_var_2201614657377291794[5] = { "self", "expr", "index", "decl", "last" };
VarInfo __struct_info__1e8db4ddc1444e12_field_149 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__c52835f1e7c9ab84, nullptr, (TypeInfo **)__type_info__87544b21d0bdc68e_arg_types_var_2201614657377291794, __type_info__87544b21d0bdc68e_arg_names_var_2201614657377291794, 5, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((smart_ptr_raw<MakeFieldDecl>,ast::AstVisitor,smart_ptr_raw<ExprMakeStruct> const ,int32_t,smart_ptr_raw<MakeFieldDecl> const ,bool))>::size, UINT64_C(0x87544b21d0bdc68e), "visitExprMakeStructField", offsetof(ast::AstVisitor,visitExprMakeStructField), 0 };
TypeInfo * __type_info__a8c08fb6b3ae9ad9_arg_types_var_2201614657377291794[3] = { &__type_info__21586ce84f433a21, &__type_info__5276a743108434eb, &__type_info__2dd484863625d80 };
const char * __type_info__a8c08fb6b3ae9ad9_arg_names_var_2201614657377291794[3] = { "self", "expr", "blk" };
VarInfo __struct_info__1e8db4ddc1444e12_field_150 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__af63eb4c86020609, nullptr, (TypeInfo **)__type_info__a8c08fb6b3ae9ad9_arg_types_var_2201614657377291794, __type_info__a8c08fb6b3ae9ad9_arg_names_var_2201614657377291794, 3, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<ExprMakeStruct> const ,smart_ptr_raw<Expression> const ))>::size, UINT64_C(0xa8c08fb6b3ae9ad9), "preVisitMakeStructureBlock", offsetof(ast::AstVisitor,preVisitMakeStructureBlock), 0 };
TypeInfo * __type_info__b3b4b1a5de3de0c7_arg_types_var_2201614657377291794[3] = { &__type_info__21586ce84f433a21, &__type_info__5276a743108434eb, &__type_info__2dd484863625d80 };
const char * __type_info__b3b4b1a5de3de0c7_arg_names_var_2201614657377291794[3] = { "self", "expr", "blk" };
VarInfo __struct_info__1e8db4ddc1444e12_field_151 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__6636442e03391ebf, nullptr, (TypeInfo **)__type_info__b3b4b1a5de3de0c7_arg_types_var_2201614657377291794, __type_info__b3b4b1a5de3de0c7_arg_names_var_2201614657377291794, 3, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((smart_ptr_raw<Expression>,ast::AstVisitor,smart_ptr_raw<ExprMakeStruct> const ,smart_ptr_raw<Expression> const ))>::size, UINT64_C(0xb3b4b1a5de3de0c7), "visitMakeStructureBlock", offsetof(ast::AstVisitor,visitMakeStructureBlock), 0 };
TypeInfo * __type_info__92682c1a46d2a5e1_arg_types_var_2201614657377291794[2] = { &__type_info__21586ce84f433a21, &__type_info__f44650fbe99befd9 };
const char * __type_info__92682c1a46d2a5e1_arg_names_var_2201614657377291794[2] = { "self", "expr" };
VarInfo __struct_info__1e8db4ddc1444e12_field_152 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__af63eb4c86020609, nullptr, (TypeInfo **)__type_info__92682c1a46d2a5e1_arg_types_var_2201614657377291794, __type_info__92682c1a46d2a5e1_arg_names_var_2201614657377291794, 2, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<ExprMakeArray> const ))>::size, UINT64_C(0x92682c1a46d2a5e1), "preVisitExprMakeArray", offsetof(ast::AstVisitor,preVisitExprMakeArray), 0 };
TypeInfo * __type_info__3b849f4fb88473bb_arg_types_var_2201614657377291794[2] = { &__type_info__21586ce84f433a21, &__type_info__f44650fbe99befd9 };
const char * __type_info__3b849f4fb88473bb_arg_names_var_2201614657377291794[2] = { "self", "expr" };
VarInfo __struct_info__1e8db4ddc1444e12_field_153 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__6636442e03391ebf, nullptr, (TypeInfo **)__type_info__3b849f4fb88473bb_arg_types_var_2201614657377291794, __type_info__3b849f4fb88473bb_arg_names_var_2201614657377291794, 2, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((smart_ptr_raw<Expression>,ast::AstVisitor,smart_ptr_raw<ExprMakeArray> const ))>::size, UINT64_C(0x3b849f4fb88473bb), "visitExprMakeArray", offsetof(ast::AstVisitor,visitExprMakeArray), 0 };
TypeInfo * __type_info__18a580c033b89448_arg_types_var_2201614657377291794[5] = { &__type_info__21586ce84f433a21, &__type_info__f44650fbe99befd9, &__type_info__af8afe4c86446b52, &__type_info__98064c57b4bcca5a, &__type_info__af81fe4c86352052 };
const char * __type_info__18a580c033b89448_arg_names_var_2201614657377291794[5] = { "self", "expr", "index", "init", "last" };
VarInfo __struct_info__1e8db4ddc1444e12_field_154 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__af63eb4c86020609, nullptr, (TypeInfo **)__type_info__18a580c033b89448_arg_types_var_2201614657377291794, __type_info__18a580c033b89448_arg_names_var_2201614657377291794, 5, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<ExprMakeArray> const ,int32_t,smart_ptr_raw<Expression> const ,bool))>::size, UINT64_C(0x18a580c033b89448), "preVisitExprMakeArrayIndex", offsetof(ast::AstVisitor,preVisitExprMakeArrayIndex), 0 };
TypeInfo * __type_info__f1bb59011ce51e2a_arg_types_var_2201614657377291794[5] = { &__type_info__21586ce84f433a21, &__type_info__f44650fbe99befd9, &__type_info__af8afe4c86446b52, &__type_info__98064c57b4bcca5a, &__type_info__af81fe4c86352052 };
const char * __type_info__f1bb59011ce51e2a_arg_names_var_2201614657377291794[5] = { "self", "expr", "index", "init", "last" };
VarInfo __struct_info__1e8db4ddc1444e12_field_155 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__6636442e03391ebf, nullptr, (TypeInfo **)__type_info__f1bb59011ce51e2a_arg_types_var_2201614657377291794, __type_info__f1bb59011ce51e2a_arg_names_var_2201614657377291794, 5, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((smart_ptr_raw<Expression>,ast::AstVisitor,smart_ptr_raw<ExprMakeArray> const ,int32_t,smart_ptr_raw<Expression> const ,bool))>::size, UINT64_C(0xf1bb59011ce51e2a), "visitExprMakeArrayIndex", offsetof(ast::AstVisitor,visitExprMakeArrayIndex), 0 };
TypeInfo * __type_info__f1f74913939e753c_arg_types_var_2201614657377291794[2] = { &__type_info__21586ce84f433a21, &__type_info__ea03eef331aabf4 };
const char * __type_info__f1f74913939e753c_arg_names_var_2201614657377291794[2] = { "self", "expr" };
VarInfo __struct_info__1e8db4ddc1444e12_field_156 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__af63eb4c86020609, nullptr, (TypeInfo **)__type_info__f1f74913939e753c_arg_types_var_2201614657377291794, __type_info__f1f74913939e753c_arg_names_var_2201614657377291794, 2, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<ExprMakeTuple> const ))>::size, UINT64_C(0xf1f74913939e753c), "preVisitExprMakeTuple", offsetof(ast::AstVisitor,preVisitExprMakeTuple), 0 };
TypeInfo * __type_info__3999c8ecc927783_arg_types_var_2201614657377291794[2] = { &__type_info__21586ce84f433a21, &__type_info__ea03eef331aabf4 };
const char * __type_info__3999c8ecc927783_arg_names_var_2201614657377291794[2] = { "self", "expr" };
VarInfo __struct_info__1e8db4ddc1444e12_field_157 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__6636442e03391ebf, nullptr, (TypeInfo **)__type_info__3999c8ecc927783_arg_types_var_2201614657377291794, __type_info__3999c8ecc927783_arg_names_var_2201614657377291794, 2, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((smart_ptr_raw<Expression>,ast::AstVisitor,smart_ptr_raw<ExprMakeTuple> const ))>::size, UINT64_C(0x3999c8ecc927783), "visitExprMakeTuple", offsetof(ast::AstVisitor,visitExprMakeTuple), 0 };
TypeInfo * __type_info__4bdfc151dedc4da9_arg_types_var_2201614657377291794[5] = { &__type_info__21586ce84f433a21, &__type_info__ea03eef331aabf4, &__type_info__af8afe4c86446b52, &__type_info__98064c57b4bcca5a, &__type_info__af81fe4c86352052 };
const char * __type_info__4bdfc151dedc4da9_arg_names_var_2201614657377291794[5] = { "self", "expr", "index", "init", "last" };
VarInfo __struct_info__1e8db4ddc1444e12_field_158 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__af63eb4c86020609, nullptr, (TypeInfo **)__type_info__4bdfc151dedc4da9_arg_types_var_2201614657377291794, __type_info__4bdfc151dedc4da9_arg_names_var_2201614657377291794, 5, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<ExprMakeTuple> const ,int32_t,smart_ptr_raw<Expression> const ,bool))>::size, UINT64_C(0x4bdfc151dedc4da9), "preVisitExprMakeTupleIndex", offsetof(ast::AstVisitor,preVisitExprMakeTupleIndex), 0 };
TypeInfo * __type_info__7e590097bace95e2_arg_types_var_2201614657377291794[5] = { &__type_info__21586ce84f433a21, &__type_info__ea03eef331aabf4, &__type_info__af8afe4c86446b52, &__type_info__98064c57b4bcca5a, &__type_info__af81fe4c86352052 };
const char * __type_info__7e590097bace95e2_arg_names_var_2201614657377291794[5] = { "self", "expr", "index", "init", "last" };
VarInfo __struct_info__1e8db4ddc1444e12_field_159 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__6636442e03391ebf, nullptr, (TypeInfo **)__type_info__7e590097bace95e2_arg_types_var_2201614657377291794, __type_info__7e590097bace95e2_arg_names_var_2201614657377291794, 5, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((smart_ptr_raw<Expression>,ast::AstVisitor,smart_ptr_raw<ExprMakeTuple> const ,int32_t,smart_ptr_raw<Expression> const ,bool))>::size, UINT64_C(0x7e590097bace95e2), "visitExprMakeTupleIndex", offsetof(ast::AstVisitor,visitExprMakeTupleIndex), 0 };
TypeInfo * __type_info__d793210438da73b2_arg_types_var_2201614657377291794[2] = { &__type_info__21586ce84f433a21, &__type_info__defdb920e82da0f4 };
const char * __type_info__d793210438da73b2_arg_names_var_2201614657377291794[2] = { "self", "expr" };
VarInfo __struct_info__1e8db4ddc1444e12_field_160 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__af63eb4c86020609, nullptr, (TypeInfo **)__type_info__d793210438da73b2_arg_types_var_2201614657377291794, __type_info__d793210438da73b2_arg_names_var_2201614657377291794, 2, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<ExprArrayComprehension> const ))>::size, UINT64_C(0xd793210438da73b2), "preVisitExprArrayComprehension", offsetof(ast::AstVisitor,preVisitExprArrayComprehension), 0 };
TypeInfo * __type_info__5935677610234a58_arg_types_var_2201614657377291794[2] = { &__type_info__21586ce84f433a21, &__type_info__defdb920e82da0f4 };
const char * __type_info__5935677610234a58_arg_names_var_2201614657377291794[2] = { "self", "expr" };
VarInfo __struct_info__1e8db4ddc1444e12_field_161 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__6636442e03391ebf, nullptr, (TypeInfo **)__type_info__5935677610234a58_arg_types_var_2201614657377291794, __type_info__5935677610234a58_arg_names_var_2201614657377291794, 2, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((smart_ptr_raw<Expression>,ast::AstVisitor,smart_ptr_raw<ExprArrayComprehension> const ))>::size, UINT64_C(0x5935677610234a58), "visitExprArrayComprehension", offsetof(ast::AstVisitor,visitExprArrayComprehension), 0 };
TypeInfo * __type_info__4380a05405d544a9_arg_types_var_2201614657377291794[3] = { &__type_info__21586ce84f433a21, &__type_info__defdb920e82da0f4, &__type_info__98064c57b4bcca5a };
const char * __type_info__4380a05405d544a9_arg_names_var_2201614657377291794[3] = { "self", "expr", "subexrp" };
VarInfo __struct_info__1e8db4ddc1444e12_field_162 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__af63eb4c86020609, nullptr, (TypeInfo **)__type_info__4380a05405d544a9_arg_types_var_2201614657377291794, __type_info__4380a05405d544a9_arg_names_var_2201614657377291794, 3, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<ExprArrayComprehension> const ,smart_ptr_raw<Expression> const ))>::size, UINT64_C(0x4380a05405d544a9), "preVisitExprArrayComprehensionSubexpr", offsetof(ast::AstVisitor,preVisitExprArrayComprehensionSubexpr), 0 };
TypeInfo * __type_info__1dd9197835443a11_arg_types_var_2201614657377291794[3] = { &__type_info__21586ce84f433a21, &__type_info__defdb920e82da0f4, &__type_info__98064c57b4bcca5a };
const char * __type_info__1dd9197835443a11_arg_names_var_2201614657377291794[3] = { "self", "expr", "filter" };
VarInfo __struct_info__1e8db4ddc1444e12_field_163 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__af63eb4c86020609, nullptr, (TypeInfo **)__type_info__1dd9197835443a11_arg_types_var_2201614657377291794, __type_info__1dd9197835443a11_arg_names_var_2201614657377291794, 3, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<ExprArrayComprehension> const ,smart_ptr_raw<Expression> const ))>::size, UINT64_C(0x1dd9197835443a11), "preVisitExprArrayComprehensionWhere", offsetof(ast::AstVisitor,preVisitExprArrayComprehensionWhere), 0 };
TypeInfo * __type_info__f722ae5ea36a9c48_arg_types_var_2201614657377291794[3] = { &__type_info__21586ce84f433a21, &__type_info__563543a880fdcea2, &__type_info__98064c57b4bcca5a };
const char * __type_info__f722ae5ea36a9c48_arg_names_var_2201614657377291794[3] = { "self", "expr", "expr_" };
VarInfo __struct_info__1e8db4ddc1444e12_field_164 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__af63df4c8601f1a5, nullptr, (TypeInfo **)__type_info__f722ae5ea36a9c48_arg_types_var_2201614657377291794, __type_info__f722ae5ea36a9c48_arg_names_var_2201614657377291794, 3, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((bool,ast::AstVisitor,smart_ptr_raw<ExprTypeInfo> const ,smart_ptr_raw<Expression> const ))>::size, UINT64_C(0xf722ae5ea36a9c48), "canVisitExprTypeInfo", offsetof(ast::AstVisitor,canVisitExprTypeInfo), 0 };
TypeInfo * __type_info__5cfa422ce6237a8e_arg_types_var_2201614657377291794[2] = { &__type_info__21586ce84f433a21, &__type_info__563543a880fdcea2 };
const char * __type_info__5cfa422ce6237a8e_arg_names_var_2201614657377291794[2] = { "self", "expr" };
VarInfo __struct_info__1e8db4ddc1444e12_field_165 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__af63eb4c86020609, nullptr, (TypeInfo **)__type_info__5cfa422ce6237a8e_arg_types_var_2201614657377291794, __type_info__5cfa422ce6237a8e_arg_names_var_2201614657377291794, 2, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<ExprTypeInfo> const ))>::size, UINT64_C(0x5cfa422ce6237a8e), "preVisitExprTypeInfo", offsetof(ast::AstVisitor,preVisitExprTypeInfo), 0 };
TypeInfo * __type_info__35446d2c24c68711_arg_types_var_2201614657377291794[2] = { &__type_info__21586ce84f433a21, &__type_info__563543a880fdcea2 };
const char * __type_info__35446d2c24c68711_arg_names_var_2201614657377291794[2] = { "self", "expr" };
VarInfo __struct_info__1e8db4ddc1444e12_field_166 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__6636442e03391ebf, nullptr, (TypeInfo **)__type_info__35446d2c24c68711_arg_types_var_2201614657377291794, __type_info__35446d2c24c68711_arg_names_var_2201614657377291794, 2, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((smart_ptr_raw<Expression>,ast::AstVisitor,smart_ptr_raw<ExprTypeInfo> const ))>::size, UINT64_C(0x35446d2c24c68711), "visitExprTypeInfo", offsetof(ast::AstVisitor,visitExprTypeInfo), 0 };
TypeInfo * __type_info__4585e1e3fd2a1c4f_arg_types_var_2201614657377291794[2] = { &__type_info__21586ce84f433a21, &__type_info__7d9fd489616ae8d };
const char * __type_info__4585e1e3fd2a1c4f_arg_names_var_2201614657377291794[2] = { "self", "expr" };
VarInfo __struct_info__1e8db4ddc1444e12_field_167 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__af63eb4c86020609, nullptr, (TypeInfo **)__type_info__4585e1e3fd2a1c4f_arg_types_var_2201614657377291794, __type_info__4585e1e3fd2a1c4f_arg_names_var_2201614657377291794, 2, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<ExprPtr2Ref> const ))>::size, UINT64_C(0x4585e1e3fd2a1c4f), "preVisitExprPtr2Ref", offsetof(ast::AstVisitor,preVisitExprPtr2Ref), 0 };
TypeInfo * __type_info__10fa045a7f20e7c5_arg_types_var_2201614657377291794[2] = { &__type_info__21586ce84f433a21, &__type_info__7d9fd489616ae8d };
const char * __type_info__10fa045a7f20e7c5_arg_names_var_2201614657377291794[2] = { "self", "expr" };
VarInfo __struct_info__1e8db4ddc1444e12_field_168 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__6636442e03391ebf, nullptr, (TypeInfo **)__type_info__10fa045a7f20e7c5_arg_types_var_2201614657377291794, __type_info__10fa045a7f20e7c5_arg_names_var_2201614657377291794, 2, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((smart_ptr_raw<Expression>,ast::AstVisitor,smart_ptr_raw<ExprPtr2Ref> const ))>::size, UINT64_C(0x10fa045a7f20e7c5), "visitExprPtr2Ref", offsetof(ast::AstVisitor,visitExprPtr2Ref), 0 };
TypeInfo * __type_info__b84f13cf26eda329_arg_types_var_2201614657377291794[2] = { &__type_info__21586ce84f433a21, &__type_info__6ad276912e16c445 };
const char * __type_info__b84f13cf26eda329_arg_names_var_2201614657377291794[2] = { "self", "expr" };
VarInfo __struct_info__1e8db4ddc1444e12_field_169 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__af63eb4c86020609, nullptr, (TypeInfo **)__type_info__b84f13cf26eda329_arg_types_var_2201614657377291794, __type_info__b84f13cf26eda329_arg_names_var_2201614657377291794, 2, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<ExprLabel> const ))>::size, UINT64_C(0xb84f13cf26eda329), "preVisitExprLabel", offsetof(ast::AstVisitor,preVisitExprLabel), 0 };
TypeInfo * __type_info__8a7f1eb665490d1a_arg_types_var_2201614657377291794[2] = { &__type_info__21586ce84f433a21, &__type_info__6ad276912e16c445 };
const char * __type_info__8a7f1eb665490d1a_arg_names_var_2201614657377291794[2] = { "self", "expr" };
VarInfo __struct_info__1e8db4ddc1444e12_field_170 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__6636442e03391ebf, nullptr, (TypeInfo **)__type_info__8a7f1eb665490d1a_arg_types_var_2201614657377291794, __type_info__8a7f1eb665490d1a_arg_names_var_2201614657377291794, 2, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((smart_ptr_raw<Expression>,ast::AstVisitor,smart_ptr_raw<ExprLabel> const ))>::size, UINT64_C(0x8a7f1eb665490d1a), "visitExprLabel", offsetof(ast::AstVisitor,visitExprLabel), 0 };
TypeInfo * __type_info__7e014002fc204c62_arg_types_var_2201614657377291794[2] = { &__type_info__21586ce84f433a21, &__type_info__41023c185ec41d2 };
const char * __type_info__7e014002fc204c62_arg_names_var_2201614657377291794[2] = { "self", "expr" };
VarInfo __struct_info__1e8db4ddc1444e12_field_171 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__af63eb4c86020609, nullptr, (TypeInfo **)__type_info__7e014002fc204c62_arg_types_var_2201614657377291794, __type_info__7e014002fc204c62_arg_names_var_2201614657377291794, 2, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<ExprGoto> const ))>::size, UINT64_C(0x7e014002fc204c62), "preVisitExprGoto", offsetof(ast::AstVisitor,preVisitExprGoto), 0 };
TypeInfo * __type_info__7adb14e36229366e_arg_types_var_2201614657377291794[2] = { &__type_info__21586ce84f433a21, &__type_info__41023c185ec41d2 };
const char * __type_info__7adb14e36229366e_arg_names_var_2201614657377291794[2] = { "self", "expr" };
VarInfo __struct_info__1e8db4ddc1444e12_field_172 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__6636442e03391ebf, nullptr, (TypeInfo **)__type_info__7adb14e36229366e_arg_types_var_2201614657377291794, __type_info__7adb14e36229366e_arg_names_var_2201614657377291794, 2, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((smart_ptr_raw<Expression>,ast::AstVisitor,smart_ptr_raw<ExprGoto> const ))>::size, UINT64_C(0x7adb14e36229366e), "visitExprGoto", offsetof(ast::AstVisitor,visitExprGoto), 0 };
TypeInfo * __type_info__8bd3f7a275b2fdb6_arg_types_var_2201614657377291794[2] = { &__type_info__21586ce84f433a21, &__type_info__bba83b75d4855b7e };
const char * __type_info__8bd3f7a275b2fdb6_arg_names_var_2201614657377291794[2] = { "self", "expr" };
VarInfo __struct_info__1e8db4ddc1444e12_field_173 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__af63eb4c86020609, nullptr, (TypeInfo **)__type_info__8bd3f7a275b2fdb6_arg_types_var_2201614657377291794, __type_info__8bd3f7a275b2fdb6_arg_names_var_2201614657377291794, 2, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<ExprRef2Value> const ))>::size, UINT64_C(0x8bd3f7a275b2fdb6), "preVisitExprRef2Value", offsetof(ast::AstVisitor,preVisitExprRef2Value), 0 };
TypeInfo * __type_info__eb17a67d73d1450d_arg_types_var_2201614657377291794[2] = { &__type_info__21586ce84f433a21, &__type_info__bba83b75d4855b7e };
const char * __type_info__eb17a67d73d1450d_arg_names_var_2201614657377291794[2] = { "self", "expr" };
VarInfo __struct_info__1e8db4ddc1444e12_field_174 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__6636442e03391ebf, nullptr, (TypeInfo **)__type_info__eb17a67d73d1450d_arg_types_var_2201614657377291794, __type_info__eb17a67d73d1450d_arg_names_var_2201614657377291794, 2, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((smart_ptr_raw<Expression>,ast::AstVisitor,smart_ptr_raw<ExprRef2Value> const ))>::size, UINT64_C(0xeb17a67d73d1450d), "visitExprRef2Value", offsetof(ast::AstVisitor,visitExprRef2Value), 0 };
TypeInfo * __type_info__e5a725d92e24b68f_arg_types_var_2201614657377291794[2] = { &__type_info__21586ce84f433a21, &__type_info__1151bc4127672205 };
const char * __type_info__e5a725d92e24b68f_arg_names_var_2201614657377291794[2] = { "self", "expr" };
VarInfo __struct_info__1e8db4ddc1444e12_field_175 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__af63eb4c86020609, nullptr, (TypeInfo **)__type_info__e5a725d92e24b68f_arg_types_var_2201614657377291794, __type_info__e5a725d92e24b68f_arg_names_var_2201614657377291794, 2, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<ExprRef2Ptr> const ))>::size, UINT64_C(0xe5a725d92e24b68f), "preVisitExprRef2Ptr", offsetof(ast::AstVisitor,preVisitExprRef2Ptr), 0 };
TypeInfo * __type_info__2a5ff066b4c53561_arg_types_var_2201614657377291794[2] = { &__type_info__21586ce84f433a21, &__type_info__1151bc4127672205 };
const char * __type_info__2a5ff066b4c53561_arg_names_var_2201614657377291794[2] = { "self", "expr" };
VarInfo __struct_info__1e8db4ddc1444e12_field_176 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__6636442e03391ebf, nullptr, (TypeInfo **)__type_info__2a5ff066b4c53561_arg_types_var_2201614657377291794, __type_info__2a5ff066b4c53561_arg_names_var_2201614657377291794, 2, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((smart_ptr_raw<Expression>,ast::AstVisitor,smart_ptr_raw<ExprRef2Ptr> const ))>::size, UINT64_C(0x2a5ff066b4c53561), "visitExprRef2Ptr", offsetof(ast::AstVisitor,visitExprRef2Ptr), 0 };
TypeInfo * __type_info__58ee4c02dcf52dbc_arg_types_var_2201614657377291794[2] = { &__type_info__21586ce84f433a21, &__type_info__c2f4bc15903e1610 };
const char * __type_info__58ee4c02dcf52dbc_arg_names_var_2201614657377291794[2] = { "self", "expr" };
VarInfo __struct_info__1e8db4ddc1444e12_field_177 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__af63eb4c86020609, nullptr, (TypeInfo **)__type_info__58ee4c02dcf52dbc_arg_types_var_2201614657377291794, __type_info__58ee4c02dcf52dbc_arg_names_var_2201614657377291794, 2, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<ExprAddr> const ))>::size, UINT64_C(0x58ee4c02dcf52dbc), "preVisitExprAddr", offsetof(ast::AstVisitor,preVisitExprAddr), 0 };
TypeInfo * __type_info__98a9ffc4527873f2_arg_types_var_2201614657377291794[2] = { &__type_info__21586ce84f433a21, &__type_info__c2f4bc15903e1610 };
const char * __type_info__98a9ffc4527873f2_arg_names_var_2201614657377291794[2] = { "self", "expr" };
VarInfo __struct_info__1e8db4ddc1444e12_field_178 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__6636442e03391ebf, nullptr, (TypeInfo **)__type_info__98a9ffc4527873f2_arg_types_var_2201614657377291794, __type_info__98a9ffc4527873f2_arg_names_var_2201614657377291794, 2, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((smart_ptr_raw<Expression>,ast::AstVisitor,smart_ptr_raw<ExprAddr> const ))>::size, UINT64_C(0x98a9ffc4527873f2), "visitExprAddr", offsetof(ast::AstVisitor,visitExprAddr), 0 };
TypeInfo * __type_info__2a79f0897f884291_arg_types_var_2201614657377291794[2] = { &__type_info__21586ce84f433a21, &__type_info__d551858bc6d43037 };
const char * __type_info__2a79f0897f884291_arg_names_var_2201614657377291794[2] = { "self", "expr" };
VarInfo __struct_info__1e8db4ddc1444e12_field_179 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__af63eb4c86020609, nullptr, (TypeInfo **)__type_info__2a79f0897f884291_arg_types_var_2201614657377291794, __type_info__2a79f0897f884291_arg_names_var_2201614657377291794, 2, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<ExprAssert> const ))>::size, UINT64_C(0x2a79f0897f884291), "preVisitExprAssert", offsetof(ast::AstVisitor,preVisitExprAssert), 0 };
TypeInfo * __type_info__d5937361ae5f76f8_arg_types_var_2201614657377291794[2] = { &__type_info__21586ce84f433a21, &__type_info__d551858bc6d43037 };
const char * __type_info__d5937361ae5f76f8_arg_names_var_2201614657377291794[2] = { "self", "expr" };
VarInfo __struct_info__1e8db4ddc1444e12_field_180 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__6636442e03391ebf, nullptr, (TypeInfo **)__type_info__d5937361ae5f76f8_arg_types_var_2201614657377291794, __type_info__d5937361ae5f76f8_arg_names_var_2201614657377291794, 2, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((smart_ptr_raw<Expression>,ast::AstVisitor,smart_ptr_raw<ExprAssert> const ))>::size, UINT64_C(0xd5937361ae5f76f8), "visitExprAssert", offsetof(ast::AstVisitor,visitExprAssert), 0 };
TypeInfo * __type_info__97956f84758cbd42_arg_types_var_2201614657377291794[2] = { &__type_info__21586ce84f433a21, &__type_info__74372feec5a81686 };
const char * __type_info__97956f84758cbd42_arg_names_var_2201614657377291794[2] = { "self", "expr" };
VarInfo __struct_info__1e8db4ddc1444e12_field_181 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__af63eb4c86020609, nullptr, (TypeInfo **)__type_info__97956f84758cbd42_arg_types_var_2201614657377291794, __type_info__97956f84758cbd42_arg_names_var_2201614657377291794, 2, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<ExprStaticAssert> const ))>::size, UINT64_C(0x97956f84758cbd42), "preVisitExprStaticAssert", offsetof(ast::AstVisitor,preVisitExprStaticAssert), 0 };
TypeInfo * __type_info__b369ba5a9fd3f6bf_arg_types_var_2201614657377291794[2] = { &__type_info__21586ce84f433a21, &__type_info__74372feec5a81686 };
const char * __type_info__b369ba5a9fd3f6bf_arg_names_var_2201614657377291794[2] = { "self", "expr" };
VarInfo __struct_info__1e8db4ddc1444e12_field_182 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__6636442e03391ebf, nullptr, (TypeInfo **)__type_info__b369ba5a9fd3f6bf_arg_types_var_2201614657377291794, __type_info__b369ba5a9fd3f6bf_arg_names_var_2201614657377291794, 2, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((smart_ptr_raw<Expression>,ast::AstVisitor,smart_ptr_raw<ExprStaticAssert> const ))>::size, UINT64_C(0xb369ba5a9fd3f6bf), "visitExprStaticAssert", offsetof(ast::AstVisitor,visitExprStaticAssert), 0 };
TypeInfo * __type_info__6ff71915ee4dc68_arg_types_var_2201614657377291794[2] = { &__type_info__21586ce84f433a21, &__type_info__9dfe8a83730428c8 };
const char * __type_info__6ff71915ee4dc68_arg_names_var_2201614657377291794[2] = { "self", "expr" };
VarInfo __struct_info__1e8db4ddc1444e12_field_183 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__af63eb4c86020609, nullptr, (TypeInfo **)__type_info__6ff71915ee4dc68_arg_types_var_2201614657377291794, __type_info__6ff71915ee4dc68_arg_names_var_2201614657377291794, 2, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<ExprQuote> const ))>::size, UINT64_C(0x6ff71915ee4dc68), "preVisitExprQuote", offsetof(ast::AstVisitor,preVisitExprQuote), 0 };
TypeInfo * __type_info__f881ff76a48e7a59_arg_types_var_2201614657377291794[2] = { &__type_info__21586ce84f433a21, &__type_info__9dfe8a83730428c8 };
const char * __type_info__f881ff76a48e7a59_arg_names_var_2201614657377291794[2] = { "self", "expr" };
VarInfo __struct_info__1e8db4ddc1444e12_field_184 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__6636442e03391ebf, nullptr, (TypeInfo **)__type_info__f881ff76a48e7a59_arg_types_var_2201614657377291794, __type_info__f881ff76a48e7a59_arg_names_var_2201614657377291794, 2, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((smart_ptr_raw<Expression>,ast::AstVisitor,smart_ptr_raw<ExprQuote> const ))>::size, UINT64_C(0xf881ff76a48e7a59), "visitExprQuote", offsetof(ast::AstVisitor,visitExprQuote), 0 };
TypeInfo * __type_info__4b98c0e117b36490_arg_types_var_2201614657377291794[2] = { &__type_info__21586ce84f433a21, &__type_info__c84cf5ded2cd1cd8 };
const char * __type_info__4b98c0e117b36490_arg_names_var_2201614657377291794[2] = { "self", "expr" };
VarInfo __struct_info__1e8db4ddc1444e12_field_185 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__af63eb4c86020609, nullptr, (TypeInfo **)__type_info__4b98c0e117b36490_arg_types_var_2201614657377291794, __type_info__4b98c0e117b36490_arg_names_var_2201614657377291794, 2, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<ExprDebug> const ))>::size, UINT64_C(0x4b98c0e117b36490), "preVisitExprDebug", offsetof(ast::AstVisitor,preVisitExprDebug), 0 };
TypeInfo * __type_info__fcd0fedcec5e3016_arg_types_var_2201614657377291794[2] = { &__type_info__21586ce84f433a21, &__type_info__c84cf5ded2cd1cd8 };
const char * __type_info__fcd0fedcec5e3016_arg_names_var_2201614657377291794[2] = { "self", "expr" };
VarInfo __struct_info__1e8db4ddc1444e12_field_186 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__6636442e03391ebf, nullptr, (TypeInfo **)__type_info__fcd0fedcec5e3016_arg_types_var_2201614657377291794, __type_info__fcd0fedcec5e3016_arg_names_var_2201614657377291794, 2, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((smart_ptr_raw<Expression>,ast::AstVisitor,smart_ptr_raw<ExprDebug> const ))>::size, UINT64_C(0xfcd0fedcec5e3016), "visitExprDebug", offsetof(ast::AstVisitor,visitExprDebug), 0 };
TypeInfo * __type_info__7f07400e46e3e0c3_arg_types_var_2201614657377291794[2] = { &__type_info__21586ce84f433a21, &__type_info__c3c8c780df6c5865 };
const char * __type_info__7f07400e46e3e0c3_arg_names_var_2201614657377291794[2] = { "self", "expr" };
VarInfo __struct_info__1e8db4ddc1444e12_field_187 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__af63eb4c86020609, nullptr, (TypeInfo **)__type_info__7f07400e46e3e0c3_arg_types_var_2201614657377291794, __type_info__7f07400e46e3e0c3_arg_names_var_2201614657377291794, 2, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<ExprInvoke> const ))>::size, UINT64_C(0x7f07400e46e3e0c3), "preVisitExprInvoke", offsetof(ast::AstVisitor,preVisitExprInvoke), 0 };
TypeInfo * __type_info__70eaf9dc12ebfe56_arg_types_var_2201614657377291794[2] = { &__type_info__21586ce84f433a21, &__type_info__c3c8c780df6c5865 };
const char * __type_info__70eaf9dc12ebfe56_arg_names_var_2201614657377291794[2] = { "self", "expr" };
VarInfo __struct_info__1e8db4ddc1444e12_field_188 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__6636442e03391ebf, nullptr, (TypeInfo **)__type_info__70eaf9dc12ebfe56_arg_types_var_2201614657377291794, __type_info__70eaf9dc12ebfe56_arg_names_var_2201614657377291794, 2, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((smart_ptr_raw<Expression>,ast::AstVisitor,smart_ptr_raw<ExprInvoke> const ))>::size, UINT64_C(0x70eaf9dc12ebfe56), "visitExprInvoke", offsetof(ast::AstVisitor,visitExprInvoke), 0 };
TypeInfo * __type_info__b1b57985905c2546_arg_types_var_2201614657377291794[2] = { &__type_info__21586ce84f433a21, &__type_info__e672712e93e236ba };
const char * __type_info__b1b57985905c2546_arg_names_var_2201614657377291794[2] = { "self", "expr" };
VarInfo __struct_info__1e8db4ddc1444e12_field_189 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__af63eb4c86020609, nullptr, (TypeInfo **)__type_info__b1b57985905c2546_arg_types_var_2201614657377291794, __type_info__b1b57985905c2546_arg_names_var_2201614657377291794, 2, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<ExprErase> const ))>::size, UINT64_C(0xb1b57985905c2546), "preVisitExprErase", offsetof(ast::AstVisitor,preVisitExprErase), 0 };
TypeInfo * __type_info__21a610d8b307aab7_arg_types_var_2201614657377291794[2] = { &__type_info__21586ce84f433a21, &__type_info__e672712e93e236ba };
const char * __type_info__21a610d8b307aab7_arg_names_var_2201614657377291794[2] = { "self", "expr" };
VarInfo __struct_info__1e8db4ddc1444e12_field_190 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__6636442e03391ebf, nullptr, (TypeInfo **)__type_info__21a610d8b307aab7_arg_types_var_2201614657377291794, __type_info__21a610d8b307aab7_arg_names_var_2201614657377291794, 2, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((smart_ptr_raw<Expression>,ast::AstVisitor,smart_ptr_raw<ExprErase> const ))>::size, UINT64_C(0x21a610d8b307aab7), "visitExprErase", offsetof(ast::AstVisitor,visitExprErase), 0 };
TypeInfo * __type_info__64c3392746be1d39_arg_types_var_2201614657377291794[2] = { &__type_info__21586ce84f433a21, &__type_info__9c37565e66334661 };
const char * __type_info__64c3392746be1d39_arg_names_var_2201614657377291794[2] = { "self", "expr" };
VarInfo __struct_info__1e8db4ddc1444e12_field_191 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__af63eb4c86020609, nullptr, (TypeInfo **)__type_info__64c3392746be1d39_arg_types_var_2201614657377291794, __type_info__64c3392746be1d39_arg_names_var_2201614657377291794, 2, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<ExprSetInsert> const ))>::size, UINT64_C(0x64c3392746be1d39), "preVisitExprSetInsert", offsetof(ast::AstVisitor,preVisitExprSetInsert), 0 };
TypeInfo * __type_info__1a6629989f7a578b_arg_types_var_2201614657377291794[2] = { &__type_info__21586ce84f433a21, &__type_info__9c37565e66334661 };
const char * __type_info__1a6629989f7a578b_arg_names_var_2201614657377291794[2] = { "self", "expr" };
VarInfo __struct_info__1e8db4ddc1444e12_field_192 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__6636442e03391ebf, nullptr, (TypeInfo **)__type_info__1a6629989f7a578b_arg_types_var_2201614657377291794, __type_info__1a6629989f7a578b_arg_names_var_2201614657377291794, 2, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((smart_ptr_raw<Expression>,ast::AstVisitor,smart_ptr_raw<ExprSetInsert> const ))>::size, UINT64_C(0x1a6629989f7a578b), "visitExprSetInsert", offsetof(ast::AstVisitor,visitExprSetInsert), 0 };
TypeInfo * __type_info__69da5802eb324301_arg_types_var_2201614657377291794[2] = { &__type_info__21586ce84f433a21, &__type_info__ee83d76e6f9a3c81 };
const char * __type_info__69da5802eb324301_arg_names_var_2201614657377291794[2] = { "self", "expr" };
VarInfo __struct_info__1e8db4ddc1444e12_field_193 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__af63eb4c86020609, nullptr, (TypeInfo **)__type_info__69da5802eb324301_arg_types_var_2201614657377291794, __type_info__69da5802eb324301_arg_names_var_2201614657377291794, 2, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<ExprFind> const ))>::size, UINT64_C(0x69da5802eb324301), "preVisitExprFind", offsetof(ast::AstVisitor,preVisitExprFind), 0 };
TypeInfo * __type_info__d95efe75d53d785_arg_types_var_2201614657377291794[2] = { &__type_info__21586ce84f433a21, &__type_info__ee83d76e6f9a3c81 };
const char * __type_info__d95efe75d53d785_arg_names_var_2201614657377291794[2] = { "self", "expr" };
VarInfo __struct_info__1e8db4ddc1444e12_field_194 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__6636442e03391ebf, nullptr, (TypeInfo **)__type_info__d95efe75d53d785_arg_types_var_2201614657377291794, __type_info__d95efe75d53d785_arg_names_var_2201614657377291794, 2, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((smart_ptr_raw<Expression>,ast::AstVisitor,smart_ptr_raw<ExprFind> const ))>::size, UINT64_C(0xd95efe75d53d785), "visitExprFind", offsetof(ast::AstVisitor,visitExprFind), 0 };
TypeInfo * __type_info__e32df143ca82380d_arg_types_var_2201614657377291794[2] = { &__type_info__21586ce84f433a21, &__type_info__7f9fc2c601e28df1 };
const char * __type_info__e32df143ca82380d_arg_names_var_2201614657377291794[2] = { "self", "expr" };
VarInfo __struct_info__1e8db4ddc1444e12_field_195 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__af63eb4c86020609, nullptr, (TypeInfo **)__type_info__e32df143ca82380d_arg_types_var_2201614657377291794, __type_info__e32df143ca82380d_arg_names_var_2201614657377291794, 2, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<ExprKeyExists> const ))>::size, UINT64_C(0xe32df143ca82380d), "preVisitExprKeyExists", offsetof(ast::AstVisitor,preVisitExprKeyExists), 0 };
TypeInfo * __type_info__803a9565358b9c2b_arg_types_var_2201614657377291794[2] = { &__type_info__21586ce84f433a21, &__type_info__7f9fc2c601e28df1 };
const char * __type_info__803a9565358b9c2b_arg_names_var_2201614657377291794[2] = { "self", "expr" };
VarInfo __struct_info__1e8db4ddc1444e12_field_196 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__6636442e03391ebf, nullptr, (TypeInfo **)__type_info__803a9565358b9c2b_arg_types_var_2201614657377291794, __type_info__803a9565358b9c2b_arg_names_var_2201614657377291794, 2, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((smart_ptr_raw<Expression>,ast::AstVisitor,smart_ptr_raw<ExprKeyExists> const ))>::size, UINT64_C(0x803a9565358b9c2b), "visitExprKeyExists", offsetof(ast::AstVisitor,visitExprKeyExists), 0 };
TypeInfo * __type_info__2a88dc897f736b05_arg_types_var_2201614657377291794[2] = { &__type_info__21586ce84f433a21, &__type_info__6bdd529063b3dbeb };
const char * __type_info__2a88dc897f736b05_arg_names_var_2201614657377291794[2] = { "self", "expr" };
VarInfo __struct_info__1e8db4ddc1444e12_field_197 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__af63eb4c86020609, nullptr, (TypeInfo **)__type_info__2a88dc897f736b05_arg_types_var_2201614657377291794, __type_info__2a88dc897f736b05_arg_names_var_2201614657377291794, 2, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<ExprAscend> const ))>::size, UINT64_C(0x2a88dc897f736b05), "preVisitExprAscend", offsetof(ast::AstVisitor,preVisitExprAscend), 0 };
TypeInfo * __type_info__862b83af69f35e28_arg_types_var_2201614657377291794[2] = { &__type_info__21586ce84f433a21, &__type_info__6bdd529063b3dbeb };
const char * __type_info__862b83af69f35e28_arg_names_var_2201614657377291794[2] = { "self", "expr" };
VarInfo __struct_info__1e8db4ddc1444e12_field_198 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__6636442e03391ebf, nullptr, (TypeInfo **)__type_info__862b83af69f35e28_arg_types_var_2201614657377291794, __type_info__862b83af69f35e28_arg_names_var_2201614657377291794, 2, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((smart_ptr_raw<Expression>,ast::AstVisitor,smart_ptr_raw<ExprAscend> const ))>::size, UINT64_C(0x862b83af69f35e28), "visitExprAscend", offsetof(ast::AstVisitor,visitExprAscend), 0 };
TypeInfo * __type_info__4ee94302d492541f_arg_types_var_2201614657377291794[2] = { &__type_info__21586ce84f433a21, &__type_info__bc5b346893db35b };
const char * __type_info__4ee94302d492541f_arg_names_var_2201614657377291794[2] = { "self", "expr" };
VarInfo __struct_info__1e8db4ddc1444e12_field_199 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__af63eb4c86020609, nullptr, (TypeInfo **)__type_info__4ee94302d492541f_arg_types_var_2201614657377291794, __type_info__4ee94302d492541f_arg_names_var_2201614657377291794, 2, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<ExprCast> const ))>::size, UINT64_C(0x4ee94302d492541f), "preVisitExprCast", offsetof(ast::AstVisitor,preVisitExprCast), 0 };
TypeInfo * __type_info__921c0fceafe8699d_arg_types_var_2201614657377291794[2] = { &__type_info__21586ce84f433a21, &__type_info__bc5b346893db35b };
const char * __type_info__921c0fceafe8699d_arg_names_var_2201614657377291794[2] = { "self", "expr" };
VarInfo __struct_info__1e8db4ddc1444e12_field_200 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__6636442e03391ebf, nullptr, (TypeInfo **)__type_info__921c0fceafe8699d_arg_types_var_2201614657377291794, __type_info__921c0fceafe8699d_arg_names_var_2201614657377291794, 2, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((smart_ptr_raw<Expression>,ast::AstVisitor,smart_ptr_raw<ExprCast> const ))>::size, UINT64_C(0x921c0fceafe8699d), "visitExprCast", offsetof(ast::AstVisitor,visitExprCast), 0 };
TypeInfo * __type_info__e6914f2eefeace48_arg_types_var_2201614657377291794[3] = { &__type_info__21586ce84f433a21, &__type_info__120723ecb6510065, &__type_info__98064c57b4bcca5a };
const char * __type_info__e6914f2eefeace48_arg_names_var_2201614657377291794[3] = { "self", "del", "expr" };
VarInfo __struct_info__1e8db4ddc1444e12_field_201 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__af63eb4c86020609, nullptr, (TypeInfo **)__type_info__e6914f2eefeace48_arg_types_var_2201614657377291794, __type_info__e6914f2eefeace48_arg_names_var_2201614657377291794, 3, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<ExprDelete> const ,smart_ptr_raw<Expression> const ))>::size, UINT64_C(0xe6914f2eefeace48), "preVisitExprDeleteSizeExpression", offsetof(ast::AstVisitor,preVisitExprDeleteSizeExpression), 0 };
TypeInfo * __type_info__81bbbfe1459b2b77_arg_types_var_2201614657377291794[2] = { &__type_info__21586ce84f433a21, &__type_info__120723ecb6510065 };
const char * __type_info__81bbbfe1459b2b77_arg_names_var_2201614657377291794[2] = { "self", "expr" };
VarInfo __struct_info__1e8db4ddc1444e12_field_202 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__af63eb4c86020609, nullptr, (TypeInfo **)__type_info__81bbbfe1459b2b77_arg_types_var_2201614657377291794, __type_info__81bbbfe1459b2b77_arg_names_var_2201614657377291794, 2, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<ExprDelete> const ))>::size, UINT64_C(0x81bbbfe1459b2b77), "preVisitExprDelete", offsetof(ast::AstVisitor,preVisitExprDelete), 0 };
TypeInfo * __type_info__8f62646d23f25b99_arg_types_var_2201614657377291794[2] = { &__type_info__21586ce84f433a21, &__type_info__120723ecb6510065 };
const char * __type_info__8f62646d23f25b99_arg_names_var_2201614657377291794[2] = { "self", "expr" };
VarInfo __struct_info__1e8db4ddc1444e12_field_203 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__6636442e03391ebf, nullptr, (TypeInfo **)__type_info__8f62646d23f25b99_arg_types_var_2201614657377291794, __type_info__8f62646d23f25b99_arg_names_var_2201614657377291794, 2, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((smart_ptr_raw<Expression>,ast::AstVisitor,smart_ptr_raw<ExprDelete> const ))>::size, UINT64_C(0x8f62646d23f25b99), "visitExprDelete", offsetof(ast::AstVisitor,visitExprDelete), 0 };
TypeInfo * __type_info__4e4f4402d3ac6a95_arg_types_var_2201614657377291794[2] = { &__type_info__21586ce84f433a21, &__type_info__f5c1d1c41d788f7 };
const char * __type_info__4e4f4402d3ac6a95_arg_names_var_2201614657377291794[2] = { "self", "expr" };
VarInfo __struct_info__1e8db4ddc1444e12_field_204 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__af63eb4c86020609, nullptr, (TypeInfo **)__type_info__4e4f4402d3ac6a95_arg_types_var_2201614657377291794, __type_info__4e4f4402d3ac6a95_arg_names_var_2201614657377291794, 2, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<ExprVar> const ))>::size, UINT64_C(0x4e4f4402d3ac6a95), "preVisitExprVar", offsetof(ast::AstVisitor,preVisitExprVar), 0 };
TypeInfo * __type_info__7f85c2937ae32f1b_arg_types_var_2201614657377291794[2] = { &__type_info__21586ce84f433a21, &__type_info__f5c1d1c41d788f7 };
const char * __type_info__7f85c2937ae32f1b_arg_names_var_2201614657377291794[2] = { "self", "expr" };
VarInfo __struct_info__1e8db4ddc1444e12_field_205 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__6636442e03391ebf, nullptr, (TypeInfo **)__type_info__7f85c2937ae32f1b_arg_types_var_2201614657377291794, __type_info__7f85c2937ae32f1b_arg_names_var_2201614657377291794, 2, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((smart_ptr_raw<Expression>,ast::AstVisitor,smart_ptr_raw<ExprVar> const ))>::size, UINT64_C(0x7f85c2937ae32f1b), "visitExprVar", offsetof(ast::AstVisitor,visitExprVar), 0 };
TypeInfo * __type_info__4e485f02d3a679c8_arg_types_var_2201614657377291794[2] = { &__type_info__21586ce84f433a21, &__type_info__631c9e15ba7d5036 };
const char * __type_info__4e485f02d3a679c8_arg_names_var_2201614657377291794[2] = { "self", "expr" };
VarInfo __struct_info__1e8db4ddc1444e12_field_206 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__af63eb4c86020609, nullptr, (TypeInfo **)__type_info__4e485f02d3a679c8_arg_types_var_2201614657377291794, __type_info__4e485f02d3a679c8_arg_names_var_2201614657377291794, 2, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<ExprTag> const ))>::size, UINT64_C(0x4e485f02d3a679c8), "preVisitExprTag", offsetof(ast::AstVisitor,preVisitExprTag), 0 };
TypeInfo * __type_info__2c13e88b48ba86ba_arg_types_var_2201614657377291794[3] = { &__type_info__21586ce84f433a21, &__type_info__631c9e15ba7d5036, &__type_info__98064c57b4bcca5a };
const char * __type_info__2c13e88b48ba86ba_arg_names_var_2201614657377291794[3] = { "self", "expr", "value" };
VarInfo __struct_info__1e8db4ddc1444e12_field_207 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__af63eb4c86020609, nullptr, (TypeInfo **)__type_info__2c13e88b48ba86ba_arg_types_var_2201614657377291794, __type_info__2c13e88b48ba86ba_arg_names_var_2201614657377291794, 3, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<ExprTag> const ,smart_ptr_raw<Expression> const ))>::size, UINT64_C(0x2c13e88b48ba86ba), "preVisitExprTagValue", offsetof(ast::AstVisitor,preVisitExprTagValue), 0 };
TypeInfo * __type_info__786ac2937496a01b_arg_types_var_2201614657377291794[2] = { &__type_info__21586ce84f433a21, &__type_info__631c9e15ba7d5036 };
const char * __type_info__786ac2937496a01b_arg_names_var_2201614657377291794[2] = { "self", "expr" };
VarInfo __struct_info__1e8db4ddc1444e12_field_208 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__6636442e03391ebf, nullptr, (TypeInfo **)__type_info__786ac2937496a01b_arg_types_var_2201614657377291794, __type_info__786ac2937496a01b_arg_names_var_2201614657377291794, 2, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((smart_ptr_raw<Expression>,ast::AstVisitor,smart_ptr_raw<ExprTag> const ))>::size, UINT64_C(0x786ac2937496a01b), "visitExprTag", offsetof(ast::AstVisitor,visitExprTag), 0 };
TypeInfo * __type_info__2b510ff5bd61305c_arg_types_var_2201614657377291794[2] = { &__type_info__21586ce84f433a21, &__type_info__849126a4e3db3268 };
const char * __type_info__2b510ff5bd61305c_arg_names_var_2201614657377291794[2] = { "self", "expr" };
VarInfo __struct_info__1e8db4ddc1444e12_field_209 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__af63eb4c86020609, nullptr, (TypeInfo **)__type_info__2b510ff5bd61305c_arg_types_var_2201614657377291794, __type_info__2b510ff5bd61305c_arg_names_var_2201614657377291794, 2, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<ExprField> const ))>::size, UINT64_C(0x2b510ff5bd61305c), "preVisitExprField", offsetof(ast::AstVisitor,preVisitExprField), 0 };
TypeInfo * __type_info__3313f7e77d463c1d_arg_types_var_2201614657377291794[2] = { &__type_info__21586ce84f433a21, &__type_info__849126a4e3db3268 };
const char * __type_info__3313f7e77d463c1d_arg_names_var_2201614657377291794[2] = { "self", "expr" };
VarInfo __struct_info__1e8db4ddc1444e12_field_210 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__6636442e03391ebf, nullptr, (TypeInfo **)__type_info__3313f7e77d463c1d_arg_types_var_2201614657377291794, __type_info__3313f7e77d463c1d_arg_names_var_2201614657377291794, 2, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((smart_ptr_raw<Expression>,ast::AstVisitor,smart_ptr_raw<ExprField> const ))>::size, UINT64_C(0x3313f7e77d463c1d), "visitExprField", offsetof(ast::AstVisitor,visitExprField), 0 };
TypeInfo * __type_info__a13178df83f85383_arg_types_var_2201614657377291794[2] = { &__type_info__21586ce84f433a21, &__type_info__a7adf4b0a367d897 };
const char * __type_info__a13178df83f85383_arg_names_var_2201614657377291794[2] = { "self", "expr" };
VarInfo __struct_info__1e8db4ddc1444e12_field_211 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__af63eb4c86020609, nullptr, (TypeInfo **)__type_info__a13178df83f85383_arg_types_var_2201614657377291794, __type_info__a13178df83f85383_arg_names_var_2201614657377291794, 2, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<ExprSafeField> const ))>::size, UINT64_C(0xa13178df83f85383), "preVisitExprSafeField", offsetof(ast::AstVisitor,preVisitExprSafeField), 0 };
TypeInfo * __type_info__671c1e58b35b487f_arg_types_var_2201614657377291794[2] = { &__type_info__21586ce84f433a21, &__type_info__a7adf4b0a367d897 };
const char * __type_info__671c1e58b35b487f_arg_names_var_2201614657377291794[2] = { "self", "expr" };
VarInfo __struct_info__1e8db4ddc1444e12_field_212 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__6636442e03391ebf, nullptr, (TypeInfo **)__type_info__671c1e58b35b487f_arg_types_var_2201614657377291794, __type_info__671c1e58b35b487f_arg_names_var_2201614657377291794, 2, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((smart_ptr_raw<Expression>,ast::AstVisitor,smart_ptr_raw<ExprSafeField> const ))>::size, UINT64_C(0x671c1e58b35b487f), "visitExprSafeField", offsetof(ast::AstVisitor,visitExprSafeField), 0 };
TypeInfo * __type_info__68bdfe50f2934580_arg_types_var_2201614657377291794[2] = { &__type_info__21586ce84f433a21, &__type_info__6bb94e24ea14ce9a };
const char * __type_info__68bdfe50f2934580_arg_names_var_2201614657377291794[2] = { "self", "expr" };
VarInfo __struct_info__1e8db4ddc1444e12_field_213 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__af63eb4c86020609, nullptr, (TypeInfo **)__type_info__68bdfe50f2934580_arg_types_var_2201614657377291794, __type_info__68bdfe50f2934580_arg_names_var_2201614657377291794, 2, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<ExprSwizzle> const ))>::size, UINT64_C(0x68bdfe50f2934580), "preVisitExprSwizzle", offsetof(ast::AstVisitor,preVisitExprSwizzle), 0 };
TypeInfo * __type_info__4c448f3c87aebe6b_arg_types_var_2201614657377291794[2] = { &__type_info__21586ce84f433a21, &__type_info__6bb94e24ea14ce9a };
const char * __type_info__4c448f3c87aebe6b_arg_names_var_2201614657377291794[2] = { "self", "expr" };
VarInfo __struct_info__1e8db4ddc1444e12_field_214 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__6636442e03391ebf, nullptr, (TypeInfo **)__type_info__4c448f3c87aebe6b_arg_types_var_2201614657377291794, __type_info__4c448f3c87aebe6b_arg_names_var_2201614657377291794, 2, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((smart_ptr_raw<Expression>,ast::AstVisitor,smart_ptr_raw<ExprSwizzle> const ))>::size, UINT64_C(0x4c448f3c87aebe6b), "visitExprSwizzle", offsetof(ast::AstVisitor,visitExprSwizzle), 0 };
TypeInfo * __type_info__c9b7983395b4b39d_arg_types_var_2201614657377291794[2] = { &__type_info__21586ce84f433a21, &__type_info__837624c70f8f1fa1 };
const char * __type_info__c9b7983395b4b39d_arg_names_var_2201614657377291794[2] = { "self", "expr" };
VarInfo __struct_info__1e8db4ddc1444e12_field_215 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__af63eb4c86020609, nullptr, (TypeInfo **)__type_info__c9b7983395b4b39d_arg_types_var_2201614657377291794, __type_info__c9b7983395b4b39d_arg_names_var_2201614657377291794, 2, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<ExprIsVariant> const ))>::size, UINT64_C(0xc9b7983395b4b39d), "preVisitExprIsVariant", offsetof(ast::AstVisitor,preVisitExprIsVariant), 0 };
TypeInfo * __type_info__a6c5a0d476401dcf_arg_types_var_2201614657377291794[2] = { &__type_info__21586ce84f433a21, &__type_info__837624c70f8f1fa1 };
const char * __type_info__a6c5a0d476401dcf_arg_names_var_2201614657377291794[2] = { "self", "expr" };
VarInfo __struct_info__1e8db4ddc1444e12_field_216 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__6636442e03391ebf, nullptr, (TypeInfo **)__type_info__a6c5a0d476401dcf_arg_types_var_2201614657377291794, __type_info__a6c5a0d476401dcf_arg_names_var_2201614657377291794, 2, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((smart_ptr_raw<Expression>,ast::AstVisitor,smart_ptr_raw<ExprIsVariant> const ))>::size, UINT64_C(0xa6c5a0d476401dcf), "visitExprIsVariant", offsetof(ast::AstVisitor,visitExprIsVariant), 0 };
TypeInfo * __type_info__7d0d2be93f052825_arg_types_var_2201614657377291794[2] = { &__type_info__21586ce84f433a21, &__type_info__229aabe2f8bef1d9 };
const char * __type_info__7d0d2be93f052825_arg_names_var_2201614657377291794[2] = { "self", "expr" };
VarInfo __struct_info__1e8db4ddc1444e12_field_217 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__af63eb4c86020609, nullptr, (TypeInfo **)__type_info__7d0d2be93f052825_arg_types_var_2201614657377291794, __type_info__7d0d2be93f052825_arg_names_var_2201614657377291794, 2, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<ExprAsVariant> const ))>::size, UINT64_C(0x7d0d2be93f052825), "preVisitExprAsVariant", offsetof(ast::AstVisitor,preVisitExprAsVariant), 0 };
TypeInfo * __type_info__8e3ef7346246d5cf_arg_types_var_2201614657377291794[2] = { &__type_info__21586ce84f433a21, &__type_info__229aabe2f8bef1d9 };
const char * __type_info__8e3ef7346246d5cf_arg_names_var_2201614657377291794[2] = { "self", "expr" };
VarInfo __struct_info__1e8db4ddc1444e12_field_218 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__6636442e03391ebf, nullptr, (TypeInfo **)__type_info__8e3ef7346246d5cf_arg_types_var_2201614657377291794, __type_info__8e3ef7346246d5cf_arg_names_var_2201614657377291794, 2, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((smart_ptr_raw<Expression>,ast::AstVisitor,smart_ptr_raw<ExprAsVariant> const ))>::size, UINT64_C(0x8e3ef7346246d5cf), "visitExprAsVariant", offsetof(ast::AstVisitor,visitExprAsVariant), 0 };
TypeInfo * __type_info__648af9cb3fe807e2_arg_types_var_2201614657377291794[2] = { &__type_info__21586ce84f433a21, &__type_info__45d77ccae958b9de };
const char * __type_info__648af9cb3fe807e2_arg_names_var_2201614657377291794[2] = { "self", "expr" };
VarInfo __struct_info__1e8db4ddc1444e12_field_219 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__af63eb4c86020609, nullptr, (TypeInfo **)__type_info__648af9cb3fe807e2_arg_types_var_2201614657377291794, __type_info__648af9cb3fe807e2_arg_names_var_2201614657377291794, 2, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<ExprSafeAsVariant> const ))>::size, UINT64_C(0x648af9cb3fe807e2), "preVisitExprSafeAsVariant", offsetof(ast::AstVisitor,preVisitExprSafeAsVariant), 0 };
TypeInfo * __type_info__9c27b1a81ccde81_arg_types_var_2201614657377291794[2] = { &__type_info__21586ce84f433a21, &__type_info__45d77ccae958b9de };
const char * __type_info__9c27b1a81ccde81_arg_names_var_2201614657377291794[2] = { "self", "expr" };
VarInfo __struct_info__1e8db4ddc1444e12_field_220 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__6636442e03391ebf, nullptr, (TypeInfo **)__type_info__9c27b1a81ccde81_arg_types_var_2201614657377291794, __type_info__9c27b1a81ccde81_arg_names_var_2201614657377291794, 2, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((smart_ptr_raw<Expression>,ast::AstVisitor,smart_ptr_raw<ExprSafeAsVariant> const ))>::size, UINT64_C(0x9c27b1a81ccde81), "visitExprSafeAsVariant", offsetof(ast::AstVisitor,visitExprSafeAsVariant), 0 };
TypeInfo * __type_info__14d78d02a2d94ef1_arg_types_var_2201614657377291794[2] = { &__type_info__21586ce84f433a21, &__type_info__c7c0e4fba3dcbfcf };
const char * __type_info__14d78d02a2d94ef1_arg_names_var_2201614657377291794[2] = { "self", "expr" };
VarInfo __struct_info__1e8db4ddc1444e12_field_221 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__af63eb4c86020609, nullptr, (TypeInfo **)__type_info__14d78d02a2d94ef1_arg_types_var_2201614657377291794, __type_info__14d78d02a2d94ef1_arg_names_var_2201614657377291794, 2, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<ExprOp1> const ))>::size, UINT64_C(0x14d78d02a2d94ef1), "preVisitExprOp1", offsetof(ast::AstVisitor,preVisitExprOp1), 0 };
TypeInfo * __type_info__9750b1938f1ae438_arg_types_var_2201614657377291794[2] = { &__type_info__21586ce84f433a21, &__type_info__c7c0e4fba3dcbfcf };
const char * __type_info__9750b1938f1ae438_arg_names_var_2201614657377291794[2] = { "self", "expr" };
VarInfo __struct_info__1e8db4ddc1444e12_field_222 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__6636442e03391ebf, nullptr, (TypeInfo **)__type_info__9750b1938f1ae438_arg_types_var_2201614657377291794, __type_info__9750b1938f1ae438_arg_names_var_2201614657377291794, 2, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((smart_ptr_raw<Expression>,ast::AstVisitor,smart_ptr_raw<ExprOp1> const ))>::size, UINT64_C(0x9750b1938f1ae438), "visitExprOp1", offsetof(ast::AstVisitor,visitExprOp1), 0 };
TypeInfo * __type_info__6ecbd3e161d61b3f_arg_types_var_2201614657377291794[2] = { &__type_info__21586ce84f433a21, &__type_info__1a5b7f11cf3fb5b5 };
const char * __type_info__6ecbd3e161d61b3f_arg_names_var_2201614657377291794[2] = { "self", "expr" };
VarInfo __struct_info__1e8db4ddc1444e12_field_223 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__af63eb4c86020609, nullptr, (TypeInfo **)__type_info__6ecbd3e161d61b3f_arg_types_var_2201614657377291794, __type_info__6ecbd3e161d61b3f_arg_names_var_2201614657377291794, 2, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<ExprReturn> const ))>::size, UINT64_C(0x6ecbd3e161d61b3f), "preVisitExprReturn", offsetof(ast::AstVisitor,preVisitExprReturn), 0 };
TypeInfo * __type_info__6ac4f424293494e8_arg_types_var_2201614657377291794[2] = { &__type_info__21586ce84f433a21, &__type_info__1a5b7f11cf3fb5b5 };
const char * __type_info__6ac4f424293494e8_arg_names_var_2201614657377291794[2] = { "self", "expr" };
VarInfo __struct_info__1e8db4ddc1444e12_field_224 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__6636442e03391ebf, nullptr, (TypeInfo **)__type_info__6ac4f424293494e8_arg_types_var_2201614657377291794, __type_info__6ac4f424293494e8_arg_names_var_2201614657377291794, 2, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((smart_ptr_raw<Expression>,ast::AstVisitor,smart_ptr_raw<ExprReturn> const ))>::size, UINT64_C(0x6ac4f424293494e8), "visitExprReturn", offsetof(ast::AstVisitor,visitExprReturn), 0 };
TypeInfo * __type_info__4ca48ef5fe7d5999_arg_types_var_2201614657377291794[2] = { &__type_info__21586ce84f433a21, &__type_info__60501e84f49c29e1 };
const char * __type_info__4ca48ef5fe7d5999_arg_names_var_2201614657377291794[2] = { "self", "expr" };
VarInfo __struct_info__1e8db4ddc1444e12_field_225 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__af63eb4c86020609, nullptr, (TypeInfo **)__type_info__4ca48ef5fe7d5999_arg_types_var_2201614657377291794, __type_info__4ca48ef5fe7d5999_arg_names_var_2201614657377291794, 2, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<ExprYield> const ))>::size, UINT64_C(0x4ca48ef5fe7d5999), "preVisitExprYield", offsetof(ast::AstVisitor,preVisitExprYield), 0 };
TypeInfo * __type_info__643af750008e451d_arg_types_var_2201614657377291794[2] = { &__type_info__21586ce84f433a21, &__type_info__60501e84f49c29e1 };
const char * __type_info__643af750008e451d_arg_names_var_2201614657377291794[2] = { "self", "expr" };
VarInfo __struct_info__1e8db4ddc1444e12_field_226 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__6636442e03391ebf, nullptr, (TypeInfo **)__type_info__643af750008e451d_arg_types_var_2201614657377291794, __type_info__643af750008e451d_arg_names_var_2201614657377291794, 2, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((smart_ptr_raw<Expression>,ast::AstVisitor,smart_ptr_raw<ExprYield> const ))>::size, UINT64_C(0x643af750008e451d), "visitExprYield", offsetof(ast::AstVisitor,visitExprYield), 0 };
TypeInfo * __type_info__81245a85698ce65d_arg_types_var_2201614657377291794[2] = { &__type_info__21586ce84f433a21, &__type_info__5047b5dbcc2127cd };
const char * __type_info__81245a85698ce65d_arg_names_var_2201614657377291794[2] = { "self", "expr" };
VarInfo __struct_info__1e8db4ddc1444e12_field_227 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__af63eb4c86020609, nullptr, (TypeInfo **)__type_info__81245a85698ce65d_arg_types_var_2201614657377291794, __type_info__81245a85698ce65d_arg_names_var_2201614657377291794, 2, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<ExprBreak> const ))>::size, UINT64_C(0x81245a85698ce65d), "preVisitExprBreak", offsetof(ast::AstVisitor,preVisitExprBreak), 0 };
TypeInfo * __type_info__249b22d5373d404d_arg_types_var_2201614657377291794[2] = { &__type_info__21586ce84f433a21, &__type_info__5047b5dbcc2127cd };
const char * __type_info__249b22d5373d404d_arg_names_var_2201614657377291794[2] = { "self", "expr" };
VarInfo __struct_info__1e8db4ddc1444e12_field_228 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__6636442e03391ebf, nullptr, (TypeInfo **)__type_info__249b22d5373d404d_arg_types_var_2201614657377291794, __type_info__249b22d5373d404d_arg_names_var_2201614657377291794, 2, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((smart_ptr_raw<Expression>,ast::AstVisitor,smart_ptr_raw<ExprBreak> const ))>::size, UINT64_C(0x249b22d5373d404d), "visitExprBreak", offsetof(ast::AstVisitor,visitExprBreak), 0 };
TypeInfo * __type_info__7363dd5a3a53e072_arg_types_var_2201614657377291794[2] = { &__type_info__21586ce84f433a21, &__type_info__5b91ede0508873e };
const char * __type_info__7363dd5a3a53e072_arg_names_var_2201614657377291794[2] = { "self", "expr" };
VarInfo __struct_info__1e8db4ddc1444e12_field_229 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__af63eb4c86020609, nullptr, (TypeInfo **)__type_info__7363dd5a3a53e072_arg_types_var_2201614657377291794, __type_info__7363dd5a3a53e072_arg_names_var_2201614657377291794, 2, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<ExprContinue> const ))>::size, UINT64_C(0x7363dd5a3a53e072), "preVisitExprContinue", offsetof(ast::AstVisitor,preVisitExprContinue), 0 };
TypeInfo * __type_info__6ed4cffd10453646_arg_types_var_2201614657377291794[2] = { &__type_info__21586ce84f433a21, &__type_info__5b91ede0508873e };
const char * __type_info__6ed4cffd10453646_arg_names_var_2201614657377291794[2] = { "self", "expr" };
VarInfo __struct_info__1e8db4ddc1444e12_field_230 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__6636442e03391ebf, nullptr, (TypeInfo **)__type_info__6ed4cffd10453646_arg_types_var_2201614657377291794, __type_info__6ed4cffd10453646_arg_names_var_2201614657377291794, 2, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((smart_ptr_raw<Expression>,ast::AstVisitor,smart_ptr_raw<ExprContinue> const ))>::size, UINT64_C(0x6ed4cffd10453646), "visitExprContinue", offsetof(ast::AstVisitor,visitExprContinue), 0 };
TypeInfo * __type_info__717cd02cdb41bb2a_arg_types_var_2201614657377291794[2] = { &__type_info__21586ce84f433a21, &__type_info__e0b574ceb6c8c70f };
const char * __type_info__717cd02cdb41bb2a_arg_names_var_2201614657377291794[2] = { "self", "expr" };
VarInfo __struct_info__1e8db4ddc1444e12_field_231 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__af63df4c8601f1a5, nullptr, (TypeInfo **)__type_info__717cd02cdb41bb2a_arg_types_var_2201614657377291794, __type_info__717cd02cdb41bb2a_arg_names_var_2201614657377291794, 2, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((bool,ast::AstVisitor,smart_ptr_raw<ExprMakeBlock> const ))>::size, UINT64_C(0x717cd02cdb41bb2a), "canVisitMakeBlockBody", offsetof(ast::AstVisitor,canVisitMakeBlockBody), 0 };
TypeInfo * __type_info__ff9cbce939b8bbe7_arg_types_var_2201614657377291794[2] = { &__type_info__21586ce84f433a21, &__type_info__e0b574ceb6c8c70f };
const char * __type_info__ff9cbce939b8bbe7_arg_names_var_2201614657377291794[2] = { "self", "expr" };
VarInfo __struct_info__1e8db4ddc1444e12_field_232 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__af63eb4c86020609, nullptr, (TypeInfo **)__type_info__ff9cbce939b8bbe7_arg_types_var_2201614657377291794, __type_info__ff9cbce939b8bbe7_arg_names_var_2201614657377291794, 2, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<ExprMakeBlock> const ))>::size, UINT64_C(0xff9cbce939b8bbe7), "preVisitExprMakeBlock", offsetof(ast::AstVisitor,preVisitExprMakeBlock), 0 };
TypeInfo * __type_info__ba19715e054fd353_arg_types_var_2201614657377291794[2] = { &__type_info__21586ce84f433a21, &__type_info__e0b574ceb6c8c70f };
const char * __type_info__ba19715e054fd353_arg_names_var_2201614657377291794[2] = { "self", "expr" };
VarInfo __struct_info__1e8db4ddc1444e12_field_233 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__6636442e03391ebf, nullptr, (TypeInfo **)__type_info__ba19715e054fd353_arg_types_var_2201614657377291794, __type_info__ba19715e054fd353_arg_names_var_2201614657377291794, 2, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((smart_ptr_raw<Expression>,ast::AstVisitor,smart_ptr_raw<ExprMakeBlock> const ))>::size, UINT64_C(0xba19715e054fd353), "visitExprMakeBlock", offsetof(ast::AstVisitor,visitExprMakeBlock), 0 };
TypeInfo * __type_info__aaec8cf0fd2ec5ac_arg_types_var_2201614657377291794[2] = { &__type_info__21586ce84f433a21, &__type_info__6c1a6b092c78a88 };
const char * __type_info__aaec8cf0fd2ec5ac_arg_names_var_2201614657377291794[2] = { "self", "expr" };
VarInfo __struct_info__1e8db4ddc1444e12_field_234 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__af63eb4c86020609, nullptr, (TypeInfo **)__type_info__aaec8cf0fd2ec5ac_arg_types_var_2201614657377291794, __type_info__aaec8cf0fd2ec5ac_arg_names_var_2201614657377291794, 2, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<ExprMakeGenerator> const ))>::size, UINT64_C(0xaaec8cf0fd2ec5ac), "preVisitExprMakeGenerator", offsetof(ast::AstVisitor,preVisitExprMakeGenerator), 0 };
TypeInfo * __type_info__160e1334ac8f8bfc_arg_types_var_2201614657377291794[2] = { &__type_info__21586ce84f433a21, &__type_info__6c1a6b092c78a88 };
const char * __type_info__160e1334ac8f8bfc_arg_names_var_2201614657377291794[2] = { "self", "expr" };
VarInfo __struct_info__1e8db4ddc1444e12_field_235 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__6636442e03391ebf, nullptr, (TypeInfo **)__type_info__160e1334ac8f8bfc_arg_types_var_2201614657377291794, __type_info__160e1334ac8f8bfc_arg_names_var_2201614657377291794, 2, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((smart_ptr_raw<Expression>,ast::AstVisitor,smart_ptr_raw<ExprMakeGenerator> const ))>::size, UINT64_C(0x160e1334ac8f8bfc), "visitExprMakeGenerator", offsetof(ast::AstVisitor,visitExprMakeGenerator), 0 };
TypeInfo * __type_info__4fa475cf1e4911cf_arg_types_var_2201614657377291794[2] = { &__type_info__21586ce84f433a21, &__type_info__f66cc598ea369f61 };
const char * __type_info__4fa475cf1e4911cf_arg_names_var_2201614657377291794[2] = { "self", "expr" };
VarInfo __struct_info__1e8db4ddc1444e12_field_236 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__af63eb4c86020609, nullptr, (TypeInfo **)__type_info__4fa475cf1e4911cf_arg_types_var_2201614657377291794, __type_info__4fa475cf1e4911cf_arg_names_var_2201614657377291794, 2, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<ExprMemZero> const ))>::size, UINT64_C(0x4fa475cf1e4911cf), "preVisitExprMemZero", offsetof(ast::AstVisitor,preVisitExprMemZero), 0 };
TypeInfo * __type_info__89db2eaecd06de6f_arg_types_var_2201614657377291794[2] = { &__type_info__21586ce84f433a21, &__type_info__f66cc598ea369f61 };
const char * __type_info__89db2eaecd06de6f_arg_names_var_2201614657377291794[2] = { "self", "expr" };
VarInfo __struct_info__1e8db4ddc1444e12_field_237 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__6636442e03391ebf, nullptr, (TypeInfo **)__type_info__89db2eaecd06de6f_arg_types_var_2201614657377291794, __type_info__89db2eaecd06de6f_arg_names_var_2201614657377291794, 2, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((smart_ptr_raw<Expression>,ast::AstVisitor,smart_ptr_raw<ExprMemZero> const ))>::size, UINT64_C(0x89db2eaecd06de6f), "visitExprMemZero", offsetof(ast::AstVisitor,visitExprMemZero), 0 };
TypeInfo * __type_info__22e143125efe0694_arg_types_var_2201614657377291794[2] = { &__type_info__21586ce84f433a21, &__type_info__118bfa23ce6c000c };
const char * __type_info__22e143125efe0694_arg_names_var_2201614657377291794[2] = { "self", "expr" };
VarInfo __struct_info__1e8db4ddc1444e12_field_238 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__af63eb4c86020609, nullptr, (TypeInfo **)__type_info__22e143125efe0694_arg_types_var_2201614657377291794, __type_info__22e143125efe0694_arg_names_var_2201614657377291794, 2, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<ExprConst> const ))>::size, UINT64_C(0x22e143125efe0694), "preVisitExprConst", offsetof(ast::AstVisitor,preVisitExprConst), 0 };
TypeInfo * __type_info__be5700ced58d4272_arg_types_var_2201614657377291794[2] = { &__type_info__21586ce84f433a21, &__type_info__118bfa23ce6c000c };
const char * __type_info__be5700ced58d4272_arg_names_var_2201614657377291794[2] = { "self", "expr" };
VarInfo __struct_info__1e8db4ddc1444e12_field_239 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__6636442e03391ebf, nullptr, (TypeInfo **)__type_info__be5700ced58d4272_arg_types_var_2201614657377291794, __type_info__be5700ced58d4272_arg_names_var_2201614657377291794, 2, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((smart_ptr_raw<Expression>,ast::AstVisitor,smart_ptr_raw<ExprConst> const ))>::size, UINT64_C(0xbe5700ced58d4272), "visitExprConst", offsetof(ast::AstVisitor,visitExprConst), 0 };
TypeInfo * __type_info__9f39d836de4c48a0_arg_types_var_2201614657377291794[2] = { &__type_info__21586ce84f433a21, &__type_info__a45346c81e6a9b80 };
const char * __type_info__9f39d836de4c48a0_arg_names_var_2201614657377291794[2] = { "self", "expr" };
VarInfo __struct_info__1e8db4ddc1444e12_field_240 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__af63eb4c86020609, nullptr, (TypeInfo **)__type_info__9f39d836de4c48a0_arg_types_var_2201614657377291794, __type_info__9f39d836de4c48a0_arg_names_var_2201614657377291794, 2, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<ExprConstPtr> const ))>::size, UINT64_C(0x9f39d836de4c48a0), "preVisitExprConstPtr", offsetof(ast::AstVisitor,preVisitExprConstPtr), 0 };
TypeInfo * __type_info__893bad96d6e1b2dc_arg_types_var_2201614657377291794[2] = { &__type_info__21586ce84f433a21, &__type_info__a45346c81e6a9b80 };
const char * __type_info__893bad96d6e1b2dc_arg_names_var_2201614657377291794[2] = { "self", "expr" };
VarInfo __struct_info__1e8db4ddc1444e12_field_241 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__6636442e03391ebf, nullptr, (TypeInfo **)__type_info__893bad96d6e1b2dc_arg_types_var_2201614657377291794, __type_info__893bad96d6e1b2dc_arg_names_var_2201614657377291794, 2, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((smart_ptr_raw<Expression>,ast::AstVisitor,smart_ptr_raw<ExprConstPtr> const ))>::size, UINT64_C(0x893bad96d6e1b2dc), "visitExprConstPtr", offsetof(ast::AstVisitor,visitExprConstPtr), 0 };
TypeInfo * __type_info__63e2d4927d6419f0_arg_types_var_2201614657377291794[2] = { &__type_info__21586ce84f433a21, &__type_info__b6d18d4b3fadccd4 };
const char * __type_info__63e2d4927d6419f0_arg_names_var_2201614657377291794[2] = { "self", "expr" };
VarInfo __struct_info__1e8db4ddc1444e12_field_242 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__af63eb4c86020609, nullptr, (TypeInfo **)__type_info__63e2d4927d6419f0_arg_types_var_2201614657377291794, __type_info__63e2d4927d6419f0_arg_names_var_2201614657377291794, 2, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<ExprConstEnumeration> const ))>::size, UINT64_C(0x63e2d4927d6419f0), "preVisitExprConstEnumeration", offsetof(ast::AstVisitor,preVisitExprConstEnumeration), 0 };
TypeInfo * __type_info__c8ee8b2e94f52665_arg_types_var_2201614657377291794[2] = { &__type_info__21586ce84f433a21, &__type_info__b6d18d4b3fadccd4 };
const char * __type_info__c8ee8b2e94f52665_arg_names_var_2201614657377291794[2] = { "self", "expr" };
VarInfo __struct_info__1e8db4ddc1444e12_field_243 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__6636442e03391ebf, nullptr, (TypeInfo **)__type_info__c8ee8b2e94f52665_arg_types_var_2201614657377291794, __type_info__c8ee8b2e94f52665_arg_names_var_2201614657377291794, 2, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((smart_ptr_raw<Expression>,ast::AstVisitor,smart_ptr_raw<ExprConstEnumeration> const ))>::size, UINT64_C(0xc8ee8b2e94f52665), "visitExprConstEnumeration", offsetof(ast::AstVisitor,visitExprConstEnumeration), 0 };
TypeInfo * __type_info__3575e938698ac7f2_arg_types_var_2201614657377291794[2] = { &__type_info__21586ce84f433a21, &__type_info__9c92a72bb3a64bfa };
const char * __type_info__3575e938698ac7f2_arg_names_var_2201614657377291794[2] = { "self", "expr" };
VarInfo __struct_info__1e8db4ddc1444e12_field_244 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__af63eb4c86020609, nullptr, (TypeInfo **)__type_info__3575e938698ac7f2_arg_types_var_2201614657377291794, __type_info__3575e938698ac7f2_arg_names_var_2201614657377291794, 2, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<ExprConstBitfield> const ))>::size, UINT64_C(0x3575e938698ac7f2), "preVisitExprConstBitfield", offsetof(ast::AstVisitor,preVisitExprConstBitfield), 0 };
TypeInfo * __type_info__f9ae7a6ab1908649_arg_types_var_2201614657377291794[2] = { &__type_info__21586ce84f433a21, &__type_info__9c92a72bb3a64bfa };
const char * __type_info__f9ae7a6ab1908649_arg_names_var_2201614657377291794[2] = { "self", "expr" };
VarInfo __struct_info__1e8db4ddc1444e12_field_245 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__6636442e03391ebf, nullptr, (TypeInfo **)__type_info__f9ae7a6ab1908649_arg_types_var_2201614657377291794, __type_info__f9ae7a6ab1908649_arg_names_var_2201614657377291794, 2, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((smart_ptr_raw<Expression>,ast::AstVisitor,smart_ptr_raw<ExprConstBitfield> const ))>::size, UINT64_C(0xf9ae7a6ab1908649), "visitExprConstBitfield", offsetof(ast::AstVisitor,visitExprConstBitfield), 0 };
TypeInfo * __type_info__634c88c1255f0102_arg_types_var_2201614657377291794[2] = { &__type_info__21586ce84f433a21, &__type_info__4a0758d80e688a0e };
const char * __type_info__634c88c1255f0102_arg_names_var_2201614657377291794[2] = { "self", "expr" };
VarInfo __struct_info__1e8db4ddc1444e12_field_246 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__af63eb4c86020609, nullptr, (TypeInfo **)__type_info__634c88c1255f0102_arg_types_var_2201614657377291794, __type_info__634c88c1255f0102_arg_names_var_2201614657377291794, 2, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<ExprConstInt8> const ))>::size, UINT64_C(0x634c88c1255f0102), "preVisitExprConstInt8", offsetof(ast::AstVisitor,preVisitExprConstInt8), 0 };
TypeInfo * __type_info__677ca996ba218a0f_arg_types_var_2201614657377291794[2] = { &__type_info__21586ce84f433a21, &__type_info__4a0758d80e688a0e };
const char * __type_info__677ca996ba218a0f_arg_names_var_2201614657377291794[2] = { "self", "expr" };
VarInfo __struct_info__1e8db4ddc1444e12_field_247 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__6636442e03391ebf, nullptr, (TypeInfo **)__type_info__677ca996ba218a0f_arg_types_var_2201614657377291794, __type_info__677ca996ba218a0f_arg_names_var_2201614657377291794, 2, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((smart_ptr_raw<Expression>,ast::AstVisitor,smart_ptr_raw<ExprConstInt8> const ))>::size, UINT64_C(0x677ca996ba218a0f), "visitExprConstInt8", offsetof(ast::AstVisitor,visitExprConstInt8), 0 };
TypeInfo * __type_info__633a91c125407a4d_arg_types_var_2201614657377291794[2] = { &__type_info__21586ce84f433a21, &__type_info__87ae85b131d91f57 };
const char * __type_info__633a91c125407a4d_arg_names_var_2201614657377291794[2] = { "self", "expr" };
VarInfo __struct_info__1e8db4ddc1444e12_field_248 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__af63eb4c86020609, nullptr, (TypeInfo **)__type_info__633a91c125407a4d_arg_types_var_2201614657377291794, __type_info__633a91c125407a4d_arg_names_var_2201614657377291794, 2, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<ExprConstInt16> const ))>::size, UINT64_C(0x633a91c125407a4d), "preVisitExprConstInt16", offsetof(ast::AstVisitor,preVisitExprConstInt16), 0 };
TypeInfo * __type_info__18f4641e60fa4fdb_arg_types_var_2201614657377291794[2] = { &__type_info__21586ce84f433a21, &__type_info__87ae85b131d91f57 };
const char * __type_info__18f4641e60fa4fdb_arg_names_var_2201614657377291794[2] = { "self", "expr" };
VarInfo __struct_info__1e8db4ddc1444e12_field_249 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__6636442e03391ebf, nullptr, (TypeInfo **)__type_info__18f4641e60fa4fdb_arg_types_var_2201614657377291794, __type_info__18f4641e60fa4fdb_arg_names_var_2201614657377291794, 2, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((smart_ptr_raw<Expression>,ast::AstVisitor,smart_ptr_raw<ExprConstInt16> const ))>::size, UINT64_C(0x18f4641e60fa4fdb), "visitExprConstInt16", offsetof(ast::AstVisitor,visitExprConstInt16), 0 };
TypeInfo * __type_info__63388ac1253d0868_arg_types_var_2201614657377291794[2] = { &__type_info__21586ce84f433a21, &__type_info__773524bb75b61932 };
const char * __type_info__63388ac1253d0868_arg_names_var_2201614657377291794[2] = { "self", "expr" };
VarInfo __struct_info__1e8db4ddc1444e12_field_250 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__af63eb4c86020609, nullptr, (TypeInfo **)__type_info__63388ac1253d0868_arg_types_var_2201614657377291794, __type_info__63388ac1253d0868_arg_names_var_2201614657377291794, 2, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<ExprConstInt64> const ))>::size, UINT64_C(0x63388ac1253d0868), "preVisitExprConstInt64", offsetof(ast::AstVisitor,preVisitExprConstInt64), 0 };
TypeInfo * __type_info__29f2661e6f6a2041_arg_types_var_2201614657377291794[2] = { &__type_info__21586ce84f433a21, &__type_info__773524bb75b61932 };
const char * __type_info__29f2661e6f6a2041_arg_names_var_2201614657377291794[2] = { "self", "expr" };
VarInfo __struct_info__1e8db4ddc1444e12_field_251 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__6636442e03391ebf, nullptr, (TypeInfo **)__type_info__29f2661e6f6a2041_arg_types_var_2201614657377291794, __type_info__29f2661e6f6a2041_arg_names_var_2201614657377291794, 2, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((smart_ptr_raw<Expression>,ast::AstVisitor,smart_ptr_raw<ExprConstInt64> const ))>::size, UINT64_C(0x29f2661e6f6a2041), "visitExprConstInt64", offsetof(ast::AstVisitor,visitExprConstInt64), 0 };
TypeInfo * __type_info__4a49f2369627a5ce_arg_types_var_2201614657377291794[2] = { &__type_info__21586ce84f433a21, &__type_info__a28688c7ffe035ce };
const char * __type_info__4a49f2369627a5ce_arg_names_var_2201614657377291794[2] = { "self", "expr" };
VarInfo __struct_info__1e8db4ddc1444e12_field_252 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__af63eb4c86020609, nullptr, (TypeInfo **)__type_info__4a49f2369627a5ce_arg_types_var_2201614657377291794, __type_info__4a49f2369627a5ce_arg_names_var_2201614657377291794, 2, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<ExprConstInt> const ))>::size, UINT64_C(0x4a49f2369627a5ce), "preVisitExprConstInt", offsetof(ast::AstVisitor,preVisitExprConstInt), 0 };
TypeInfo * __type_info__6794a996ba4a520f_arg_types_var_2201614657377291794[2] = { &__type_info__21586ce84f433a21, &__type_info__a28688c7ffe035ce };
const char * __type_info__6794a996ba4a520f_arg_names_var_2201614657377291794[2] = { "self", "expr" };
VarInfo __struct_info__1e8db4ddc1444e12_field_253 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__6636442e03391ebf, nullptr, (TypeInfo **)__type_info__6794a996ba4a520f_arg_types_var_2201614657377291794, __type_info__6794a996ba4a520f_arg_names_var_2201614657377291794, 2, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((smart_ptr_raw<Expression>,ast::AstVisitor,smart_ptr_raw<ExprConstInt> const ))>::size, UINT64_C(0x6794a996ba4a520f), "visitExprConstInt", offsetof(ast::AstVisitor,visitExprConstInt), 0 };
TypeInfo * __type_info__634c8ec1255f0b34_arg_types_var_2201614657377291794[2] = { &__type_info__21586ce84f433a21, &__type_info__2d27aed7dd587c30 };
const char * __type_info__634c8ec1255f0b34_arg_names_var_2201614657377291794[2] = { "self", "expr" };
VarInfo __struct_info__1e8db4ddc1444e12_field_254 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__af63eb4c86020609, nullptr, (TypeInfo **)__type_info__634c8ec1255f0b34_arg_types_var_2201614657377291794, __type_info__634c8ec1255f0b34_arg_names_var_2201614657377291794, 2, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<ExprConstInt2> const ))>::size, UINT64_C(0x634c8ec1255f0b34), "preVisitExprConstInt2", offsetof(ast::AstVisitor,preVisitExprConstInt2), 0 };
TypeInfo * __type_info__6786a996ba32880f_arg_types_var_2201614657377291794[2] = { &__type_info__21586ce84f433a21, &__type_info__2d27aed7dd587c30 };
const char * __type_info__6786a996ba32880f_arg_names_var_2201614657377291794[2] = { "self", "expr" };
VarInfo __struct_info__1e8db4ddc1444e12_field_255 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__6636442e03391ebf, nullptr, (TypeInfo **)__type_info__6786a996ba32880f_arg_types_var_2201614657377291794, __type_info__6786a996ba32880f_arg_names_var_2201614657377291794, 2, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((smart_ptr_raw<Expression>,ast::AstVisitor,smart_ptr_raw<ExprConstInt2> const ))>::size, UINT64_C(0x6786a996ba32880f), "visitExprConstInt2", offsetof(ast::AstVisitor,visitExprConstInt2), 0 };
TypeInfo * __type_info__634c8fc1255f0ce7_arg_types_var_2201614657377291794[2] = { &__type_info__21586ce84f433a21, &__type_info__31b7a5d7e3ad4eb7 };
const char * __type_info__634c8fc1255f0ce7_arg_names_var_2201614657377291794[2] = { "self", "expr" };
VarInfo __struct_info__1e8db4ddc1444e12_field_256 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__af63eb4c86020609, nullptr, (TypeInfo **)__type_info__634c8fc1255f0ce7_arg_types_var_2201614657377291794, __type_info__634c8fc1255f0ce7_arg_names_var_2201614657377291794, 2, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<ExprConstInt3> const ))>::size, UINT64_C(0x634c8fc1255f0ce7), "preVisitExprConstInt3", offsetof(ast::AstVisitor,preVisitExprConstInt3), 0 };
TypeInfo * __type_info__6787a996ba343b0f_arg_types_var_2201614657377291794[2] = { &__type_info__21586ce84f433a21, &__type_info__31b7a5d7e3ad4eb7 };
const char * __type_info__6787a996ba343b0f_arg_names_var_2201614657377291794[2] = { "self", "expr" };
VarInfo __struct_info__1e8db4ddc1444e12_field_257 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__6636442e03391ebf, nullptr, (TypeInfo **)__type_info__6787a996ba343b0f_arg_types_var_2201614657377291794, __type_info__6787a996ba343b0f_arg_names_var_2201614657377291794, 2, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((smart_ptr_raw<Expression>,ast::AstVisitor,smart_ptr_raw<ExprConstInt3> const ))>::size, UINT64_C(0x6787a996ba343b0f), "visitExprConstInt3", offsetof(ast::AstVisitor,visitExprConstInt3), 0 };
TypeInfo * __type_info__634c8cc1255f07ce_arg_types_var_2201614657377291794[2] = { &__type_info__21586ce84f433a21, &__type_info__2914e4d7d4fafa72 };
const char * __type_info__634c8cc1255f07ce_arg_names_var_2201614657377291794[2] = { "self", "expr" };
VarInfo __struct_info__1e8db4ddc1444e12_field_258 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__af63eb4c86020609, nullptr, (TypeInfo **)__type_info__634c8cc1255f07ce_arg_types_var_2201614657377291794, __type_info__634c8cc1255f07ce_arg_names_var_2201614657377291794, 2, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<ExprConstInt4> const ))>::size, UINT64_C(0x634c8cc1255f07ce), "preVisitExprConstInt4", offsetof(ast::AstVisitor,preVisitExprConstInt4), 0 };
TypeInfo * __type_info__6788a996ba35ee0f_arg_types_var_2201614657377291794[2] = { &__type_info__21586ce84f433a21, &__type_info__2914e4d7d4fafa72 };
const char * __type_info__6788a996ba35ee0f_arg_names_var_2201614657377291794[2] = { "self", "expr" };
VarInfo __struct_info__1e8db4ddc1444e12_field_259 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__6636442e03391ebf, nullptr, (TypeInfo **)__type_info__6788a996ba35ee0f_arg_types_var_2201614657377291794, __type_info__6788a996ba35ee0f_arg_names_var_2201614657377291794, 2, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((smart_ptr_raw<Expression>,ast::AstVisitor,smart_ptr_raw<ExprConstInt4> const ))>::size, UINT64_C(0x6788a996ba35ee0f), "visitExprConstInt4", offsetof(ast::AstVisitor,visitExprConstInt4), 0 };
TypeInfo * __type_info__cff23f236d195ae9_arg_types_var_2201614657377291794[2] = { &__type_info__21586ce84f433a21, &__type_info__f6614284ea50cbe7 };
const char * __type_info__cff23f236d195ae9_arg_names_var_2201614657377291794[2] = { "self", "expr" };
VarInfo __struct_info__1e8db4ddc1444e12_field_260 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__af63eb4c86020609, nullptr, (TypeInfo **)__type_info__cff23f236d195ae9_arg_types_var_2201614657377291794, __type_info__cff23f236d195ae9_arg_names_var_2201614657377291794, 2, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<ExprConstUInt8> const ))>::size, UINT64_C(0xcff23f236d195ae9), "preVisitExprConstUInt8", offsetof(ast::AstVisitor,preVisitExprConstUInt8), 0 };
TypeInfo * __type_info__569e217b0a57efab_arg_types_var_2201614657377291794[2] = { &__type_info__21586ce84f433a21, &__type_info__f6614284ea50cbe7 };
const char * __type_info__569e217b0a57efab_arg_names_var_2201614657377291794[2] = { "self", "expr" };
VarInfo __struct_info__1e8db4ddc1444e12_field_261 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__6636442e03391ebf, nullptr, (TypeInfo **)__type_info__569e217b0a57efab_arg_types_var_2201614657377291794, __type_info__569e217b0a57efab_arg_names_var_2201614657377291794, 2, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((smart_ptr_raw<Expression>,ast::AstVisitor,smart_ptr_raw<ExprConstUInt8> const ))>::size, UINT64_C(0x569e217b0a57efab), "visitExprConstUInt8", offsetof(ast::AstVisitor,visitExprConstUInt8), 0 };
TypeInfo * __type_info__5a3228324ddf49ed_arg_types_var_2201614657377291794[2] = { &__type_info__21586ce84f433a21, &__type_info__f108ab47d962e793 };
const char * __type_info__5a3228324ddf49ed_arg_names_var_2201614657377291794[2] = { "self", "expr" };
VarInfo __struct_info__1e8db4ddc1444e12_field_262 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__af63eb4c86020609, nullptr, (TypeInfo **)__type_info__5a3228324ddf49ed_arg_types_var_2201614657377291794, __type_info__5a3228324ddf49ed_arg_names_var_2201614657377291794, 2, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<ExprConstUInt16> const ))>::size, UINT64_C(0x5a3228324ddf49ed), "preVisitExprConstUInt16", offsetof(ast::AstVisitor,preVisitExprConstUInt16), 0 };
TypeInfo * __type_info__5688187b0a327e60_arg_types_var_2201614657377291794[2] = { &__type_info__21586ce84f433a21, &__type_info__f108ab47d962e793 };
const char * __type_info__5688187b0a327e60_arg_names_var_2201614657377291794[2] = { "self", "expr" };
VarInfo __struct_info__1e8db4ddc1444e12_field_263 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__6636442e03391ebf, nullptr, (TypeInfo **)__type_info__5688187b0a327e60_arg_types_var_2201614657377291794, __type_info__5688187b0a327e60_arg_names_var_2201614657377291794, 2, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((smart_ptr_raw<Expression>,ast::AstVisitor,smart_ptr_raw<ExprConstUInt16> const ))>::size, UINT64_C(0x5688187b0a327e60), "visitExprConstUInt16", offsetof(ast::AstVisitor,visitExprConstUInt16), 0 };
TypeInfo * __type_info__5d98263250c26f87_arg_types_var_2201614657377291794[2] = { &__type_info__21586ce84f433a21, &__type_info__63e1b8a29ad93469 };
const char * __type_info__5d98263250c26f87_arg_names_var_2201614657377291794[2] = { "self", "expr" };
VarInfo __struct_info__1e8db4ddc1444e12_field_264 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__af63eb4c86020609, nullptr, (TypeInfo **)__type_info__5d98263250c26f87_arg_types_var_2201614657377291794, __type_info__5d98263250c26f87_arg_names_var_2201614657377291794, 2, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<ExprConstUInt64> const ))>::size, UINT64_C(0x5d98263250c26f87), "preVisitExprConstUInt64", offsetof(ast::AstVisitor,preVisitExprConstUInt64), 0 };
TypeInfo * __type_info__568a1f7b0a35f045_arg_types_var_2201614657377291794[2] = { &__type_info__21586ce84f433a21, &__type_info__63e1b8a29ad93469 };
const char * __type_info__568a1f7b0a35f045_arg_names_var_2201614657377291794[2] = { "self", "expr" };
VarInfo __struct_info__1e8db4ddc1444e12_field_265 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__6636442e03391ebf, nullptr, (TypeInfo **)__type_info__568a1f7b0a35f045_arg_types_var_2201614657377291794, __type_info__568a1f7b0a35f045_arg_names_var_2201614657377291794, 2, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((smart_ptr_raw<Expression>,ast::AstVisitor,smart_ptr_raw<ExprConstUInt64> const ))>::size, UINT64_C(0x568a1f7b0a35f045), "visitExprConstUInt64", offsetof(ast::AstVisitor,visitExprConstUInt64), 0 };
TypeInfo * __type_info__d01a3f236d5d52e9_arg_types_var_2201614657377291794[2] = { &__type_info__21586ce84f433a21, &__type_info__518dd4a2ad91defd };
const char * __type_info__d01a3f236d5d52e9_arg_names_var_2201614657377291794[2] = { "self", "expr" };
VarInfo __struct_info__1e8db4ddc1444e12_field_266 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__af63eb4c86020609, nullptr, (TypeInfo **)__type_info__d01a3f236d5d52e9_arg_types_var_2201614657377291794, __type_info__d01a3f236d5d52e9_arg_names_var_2201614657377291794, 2, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<ExprConstUInt> const ))>::size, UINT64_C(0xd01a3f236d5d52e9), "preVisitExprConstUInt", offsetof(ast::AstVisitor,preVisitExprConstUInt), 0 };
TypeInfo * __type_info__f6bea3965a10ae11_arg_types_var_2201614657377291794[2] = { &__type_info__21586ce84f433a21, &__type_info__518dd4a2ad91defd };
const char * __type_info__f6bea3965a10ae11_arg_names_var_2201614657377291794[2] = { "self", "expr" };
VarInfo __struct_info__1e8db4ddc1444e12_field_267 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__6636442e03391ebf, nullptr, (TypeInfo **)__type_info__f6bea3965a10ae11_arg_types_var_2201614657377291794, __type_info__f6bea3965a10ae11_arg_names_var_2201614657377291794, 2, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((smart_ptr_raw<Expression>,ast::AstVisitor,smart_ptr_raw<ExprConstUInt> const ))>::size, UINT64_C(0xf6bea3965a10ae11), "visitExprConstUInt", offsetof(ast::AstVisitor,visitExprConstUInt), 0 };
TypeInfo * __type_info__cfe83f236d085ce9_arg_types_var_2201614657377291794[2] = { &__type_info__21586ce84f433a21, &__type_info__514742689af99de7 };
const char * __type_info__cfe83f236d085ce9_arg_names_var_2201614657377291794[2] = { "self", "expr" };
VarInfo __struct_info__1e8db4ddc1444e12_field_268 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__af63eb4c86020609, nullptr, (TypeInfo **)__type_info__cfe83f236d085ce9_arg_types_var_2201614657377291794, __type_info__cfe83f236d085ce9_arg_names_var_2201614657377291794, 2, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<ExprConstUInt2> const ))>::size, UINT64_C(0xcfe83f236d085ce9), "preVisitExprConstUInt2", offsetof(ast::AstVisitor,preVisitExprConstUInt2), 0 };
TypeInfo * __type_info__569e1b7b0a57e579_arg_types_var_2201614657377291794[2] = { &__type_info__21586ce84f433a21, &__type_info__514742689af99de7 };
const char * __type_info__569e1b7b0a57e579_arg_names_var_2201614657377291794[2] = { "self", "expr" };
VarInfo __struct_info__1e8db4ddc1444e12_field_269 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__6636442e03391ebf, nullptr, (TypeInfo **)__type_info__569e1b7b0a57e579_arg_types_var_2201614657377291794, __type_info__569e1b7b0a57e579_arg_names_var_2201614657377291794, 2, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((smart_ptr_raw<Expression>,ast::AstVisitor,smart_ptr_raw<ExprConstUInt2> const ))>::size, UINT64_C(0x569e1b7b0a57e579), "visitExprConstUInt2", offsetof(ast::AstVisitor,visitExprConstUInt2), 0 };
TypeInfo * __type_info__cfe93f236d0a0fe9_arg_types_var_2201614657377291794[2] = { &__type_info__21586ce84f433a21, &__type_info__563e42636db280e7 };
const char * __type_info__cfe93f236d0a0fe9_arg_names_var_2201614657377291794[2] = { "self", "expr" };
VarInfo __struct_info__1e8db4ddc1444e12_field_270 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__af63eb4c86020609, nullptr, (TypeInfo **)__type_info__cfe93f236d0a0fe9_arg_types_var_2201614657377291794, __type_info__cfe93f236d0a0fe9_arg_names_var_2201614657377291794, 2, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<ExprConstUInt3> const ))>::size, UINT64_C(0xcfe93f236d0a0fe9), "preVisitExprConstUInt3", offsetof(ast::AstVisitor,preVisitExprConstUInt3), 0 };
TypeInfo * __type_info__569e1a7b0a57e3c6_arg_types_var_2201614657377291794[2] = { &__type_info__21586ce84f433a21, &__type_info__563e42636db280e7 };
const char * __type_info__569e1a7b0a57e3c6_arg_names_var_2201614657377291794[2] = { "self", "expr" };
VarInfo __struct_info__1e8db4ddc1444e12_field_271 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__6636442e03391ebf, nullptr, (TypeInfo **)__type_info__569e1a7b0a57e3c6_arg_types_var_2201614657377291794, __type_info__569e1a7b0a57e3c6_arg_names_var_2201614657377291794, 2, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((smart_ptr_raw<Expression>,ast::AstVisitor,smart_ptr_raw<ExprConstUInt3> const ))>::size, UINT64_C(0x569e1a7b0a57e3c6), "visitExprConstUInt3", offsetof(ast::AstVisitor,visitExprConstUInt3), 0 };
TypeInfo * __type_info__cfee3f236d128ee9_arg_types_var_2201614657377291794[2] = { &__type_info__21586ce84f433a21, &__type_info__a17d42718ebadfe7 };
const char * __type_info__cfee3f236d128ee9_arg_names_var_2201614657377291794[2] = { "self", "expr" };
VarInfo __struct_info__1e8db4ddc1444e12_field_272 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__af63eb4c86020609, nullptr, (TypeInfo **)__type_info__cfee3f236d128ee9_arg_types_var_2201614657377291794, __type_info__cfee3f236d128ee9_arg_names_var_2201614657377291794, 2, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<ExprConstUInt4> const ))>::size, UINT64_C(0xcfee3f236d128ee9), "preVisitExprConstUInt4", offsetof(ast::AstVisitor,preVisitExprConstUInt4), 0 };
TypeInfo * __type_info__569e1d7b0a57e8df_arg_types_var_2201614657377291794[2] = { &__type_info__21586ce84f433a21, &__type_info__a17d42718ebadfe7 };
const char * __type_info__569e1d7b0a57e8df_arg_names_var_2201614657377291794[2] = { "self", "expr" };
VarInfo __struct_info__1e8db4ddc1444e12_field_273 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__6636442e03391ebf, nullptr, (TypeInfo **)__type_info__569e1d7b0a57e8df_arg_types_var_2201614657377291794, __type_info__569e1d7b0a57e8df_arg_names_var_2201614657377291794, 2, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((smart_ptr_raw<Expression>,ast::AstVisitor,smart_ptr_raw<ExprConstUInt4> const ))>::size, UINT64_C(0x569e1d7b0a57e8df), "visitExprConstUInt4", offsetof(ast::AstVisitor,visitExprConstUInt4), 0 };
TypeInfo * __type_info__23dd3c465c5aacf8_arg_types_var_2201614657377291794[2] = { &__type_info__21586ce84f433a21, &__type_info__214ca0a8404236ce };
const char * __type_info__23dd3c465c5aacf8_arg_names_var_2201614657377291794[2] = { "self", "expr" };
VarInfo __struct_info__1e8db4ddc1444e12_field_274 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__af63eb4c86020609, nullptr, (TypeInfo **)__type_info__23dd3c465c5aacf8_arg_types_var_2201614657377291794, __type_info__23dd3c465c5aacf8_arg_names_var_2201614657377291794, 2, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<ExprConstRange> const ))>::size, UINT64_C(0x23dd3c465c5aacf8), "preVisitExprConstRange", offsetof(ast::AstVisitor,preVisitExprConstRange), 0 };
TypeInfo * __type_info__c0c341f22742465d_arg_types_var_2201614657377291794[2] = { &__type_info__21586ce84f433a21, &__type_info__214ca0a8404236ce };
const char * __type_info__c0c341f22742465d_arg_names_var_2201614657377291794[2] = { "self", "expr" };
VarInfo __struct_info__1e8db4ddc1444e12_field_275 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__6636442e03391ebf, nullptr, (TypeInfo **)__type_info__c0c341f22742465d_arg_types_var_2201614657377291794, __type_info__c0c341f22742465d_arg_names_var_2201614657377291794, 2, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((smart_ptr_raw<Expression>,ast::AstVisitor,smart_ptr_raw<ExprConstRange> const ))>::size, UINT64_C(0xc0c341f22742465d), "visitExprConstRange", offsetof(ast::AstVisitor,visitExprConstRange), 0 };
TypeInfo * __type_info__aaa036240f9f1383_arg_types_var_2201614657377291794[2] = { &__type_info__21586ce84f433a21, &__type_info__d2fee6b26665c989 };
const char * __type_info__aaa036240f9f1383_arg_names_var_2201614657377291794[2] = { "self", "expr" };
VarInfo __struct_info__1e8db4ddc1444e12_field_276 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__af63eb4c86020609, nullptr, (TypeInfo **)__type_info__aaa036240f9f1383_arg_types_var_2201614657377291794, __type_info__aaa036240f9f1383_arg_names_var_2201614657377291794, 2, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<ExprConstURange> const ))>::size, UINT64_C(0xaaa036240f9f1383), "preVisitExprConstURange", offsetof(ast::AstVisitor,preVisitExprConstURange), 0 };
TypeInfo * __type_info__f0945e93d1915b71_arg_types_var_2201614657377291794[2] = { &__type_info__21586ce84f433a21, &__type_info__d2fee6b26665c989 };
const char * __type_info__f0945e93d1915b71_arg_names_var_2201614657377291794[2] = { "self", "expr" };
VarInfo __struct_info__1e8db4ddc1444e12_field_277 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__6636442e03391ebf, nullptr, (TypeInfo **)__type_info__f0945e93d1915b71_arg_types_var_2201614657377291794, __type_info__f0945e93d1915b71_arg_names_var_2201614657377291794, 2, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((smart_ptr_raw<Expression>,ast::AstVisitor,smart_ptr_raw<ExprConstURange> const ))>::size, UINT64_C(0xf0945e93d1915b71), "visitExprConstURange", offsetof(ast::AstVisitor,visitExprConstURange), 0 };
TypeInfo * __type_info__4b86398eedf1a60a_arg_types_var_2201614657377291794[2] = { &__type_info__21586ce84f433a21, &__type_info__4f02b717be42f032 };
const char * __type_info__4b86398eedf1a60a_arg_names_var_2201614657377291794[2] = { "self", "expr" };
VarInfo __struct_info__1e8db4ddc1444e12_field_278 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__af63eb4c86020609, nullptr, (TypeInfo **)__type_info__4b86398eedf1a60a_arg_types_var_2201614657377291794, __type_info__4b86398eedf1a60a_arg_names_var_2201614657377291794, 2, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<ExprConstRange64> const ))>::size, UINT64_C(0x4b86398eedf1a60a), "preVisitExprConstRange64", offsetof(ast::AstVisitor,preVisitExprConstRange64), 0 };
TypeInfo * __type_info__834b777876181e6b_arg_types_var_2201614657377291794[2] = { &__type_info__21586ce84f433a21, &__type_info__4f02b717be42f032 };
const char * __type_info__834b777876181e6b_arg_names_var_2201614657377291794[2] = { "self", "expr" };
VarInfo __struct_info__1e8db4ddc1444e12_field_279 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__6636442e03391ebf, nullptr, (TypeInfo **)__type_info__834b777876181e6b_arg_types_var_2201614657377291794, __type_info__834b777876181e6b_arg_names_var_2201614657377291794, 2, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((smart_ptr_raw<Expression>,ast::AstVisitor,smart_ptr_raw<ExprConstRange64> const ))>::size, UINT64_C(0x834b777876181e6b), "visitExprConstRange64", offsetof(ast::AstVisitor,visitExprConstRange64), 0 };
TypeInfo * __type_info__af4bb646a82e19f5_arg_types_var_2201614657377291794[2] = { &__type_info__21586ce84f433a21, &__type_info__b8524aede8fd2575 };
const char * __type_info__af4bb646a82e19f5_arg_names_var_2201614657377291794[2] = { "self", "expr" };
VarInfo __struct_info__1e8db4ddc1444e12_field_280 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__af63eb4c86020609, nullptr, (TypeInfo **)__type_info__af4bb646a82e19f5_arg_types_var_2201614657377291794, __type_info__af4bb646a82e19f5_arg_names_var_2201614657377291794, 2, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<ExprConstURange64> const ))>::size, UINT64_C(0xaf4bb646a82e19f5), "preVisitExprConstURange64", offsetof(ast::AstVisitor,preVisitExprConstURange64), 0 };
TypeInfo * __type_info__5d8bfc2d1a2015a5_arg_types_var_2201614657377291794[2] = { &__type_info__21586ce84f433a21, &__type_info__b8524aede8fd2575 };
const char * __type_info__5d8bfc2d1a2015a5_arg_names_var_2201614657377291794[2] = { "self", "expr" };
VarInfo __struct_info__1e8db4ddc1444e12_field_281 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__6636442e03391ebf, nullptr, (TypeInfo **)__type_info__5d8bfc2d1a2015a5_arg_types_var_2201614657377291794, __type_info__5d8bfc2d1a2015a5_arg_names_var_2201614657377291794, 2, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((smart_ptr_raw<Expression>,ast::AstVisitor,smart_ptr_raw<ExprConstURange64> const ))>::size, UINT64_C(0x5d8bfc2d1a2015a5), "visitExprConstURange64", offsetof(ast::AstVisitor,visitExprConstURange64), 0 };
TypeInfo * __type_info__68cb32f89791abb7_arg_types_var_2201614657377291794[2] = { &__type_info__21586ce84f433a21, &__type_info__ea252439573ea197 };
const char * __type_info__68cb32f89791abb7_arg_names_var_2201614657377291794[2] = { "self", "expr" };
VarInfo __struct_info__1e8db4ddc1444e12_field_282 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__af63eb4c86020609, nullptr, (TypeInfo **)__type_info__68cb32f89791abb7_arg_types_var_2201614657377291794, __type_info__68cb32f89791abb7_arg_names_var_2201614657377291794, 2, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<ExprConstBool> const ))>::size, UINT64_C(0x68cb32f89791abb7), "preVisitExprConstBool", offsetof(ast::AstVisitor,preVisitExprConstBool), 0 };
TypeInfo * __type_info__6ab1c296bcd15d4d_arg_types_var_2201614657377291794[2] = { &__type_info__21586ce84f433a21, &__type_info__ea252439573ea197 };
const char * __type_info__6ab1c296bcd15d4d_arg_names_var_2201614657377291794[2] = { "self", "expr" };
VarInfo __struct_info__1e8db4ddc1444e12_field_283 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__6636442e03391ebf, nullptr, (TypeInfo **)__type_info__6ab1c296bcd15d4d_arg_types_var_2201614657377291794, __type_info__6ab1c296bcd15d4d_arg_names_var_2201614657377291794, 2, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((smart_ptr_raw<Expression>,ast::AstVisitor,smart_ptr_raw<ExprConstBool> const ))>::size, UINT64_C(0x6ab1c296bcd15d4d), "visitExprConstBool", offsetof(ast::AstVisitor,visitExprConstBool), 0 };
TypeInfo * __type_info__619835e3cb9cb14b_arg_types_var_2201614657377291794[2] = { &__type_info__21586ce84f433a21, &__type_info__50c7808637778d65 };
const char * __type_info__619835e3cb9cb14b_arg_names_var_2201614657377291794[2] = { "self", "expr" };
VarInfo __struct_info__1e8db4ddc1444e12_field_284 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__af63eb4c86020609, nullptr, (TypeInfo **)__type_info__619835e3cb9cb14b_arg_types_var_2201614657377291794, __type_info__619835e3cb9cb14b_arg_names_var_2201614657377291794, 2, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<ExprConstFloat> const ))>::size, UINT64_C(0x619835e3cb9cb14b), "preVisitExprConstFloat", offsetof(ast::AstVisitor,preVisitExprConstFloat), 0 };
TypeInfo * __type_info__ab85832951adf487_arg_types_var_2201614657377291794[2] = { &__type_info__21586ce84f433a21, &__type_info__50c7808637778d65 };
const char * __type_info__ab85832951adf487_arg_names_var_2201614657377291794[2] = { "self", "expr" };
VarInfo __struct_info__1e8db4ddc1444e12_field_285 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__6636442e03391ebf, nullptr, (TypeInfo **)__type_info__ab85832951adf487_arg_types_var_2201614657377291794, __type_info__ab85832951adf487_arg_names_var_2201614657377291794, 2, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((smart_ptr_raw<Expression>,ast::AstVisitor,smart_ptr_raw<ExprConstFloat> const ))>::size, UINT64_C(0xab85832951adf487), "visitExprConstFloat", offsetof(ast::AstVisitor,visitExprConstFloat), 0 };
TypeInfo * __type_info__72550b12fb41909b_arg_types_var_2201614657377291794[2] = { &__type_info__21586ce84f433a21, &__type_info__4f4cc10892c6c61 };
const char * __type_info__72550b12fb41909b_arg_names_var_2201614657377291794[2] = { "self", "expr" };
VarInfo __struct_info__1e8db4ddc1444e12_field_286 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__af63eb4c86020609, nullptr, (TypeInfo **)__type_info__72550b12fb41909b_arg_types_var_2201614657377291794, __type_info__72550b12fb41909b_arg_names_var_2201614657377291794, 2, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<ExprConstFloat2> const ))>::size, UINT64_C(0x72550b12fb41909b), "preVisitExprConstFloat2", offsetof(ast::AstVisitor,preVisitExprConstFloat2), 0 };
TypeInfo * __type_info__abb3832951fc1e87_arg_types_var_2201614657377291794[2] = { &__type_info__21586ce84f433a21, &__type_info__4f4cc10892c6c61 };
const char * __type_info__abb3832951fc1e87_arg_names_var_2201614657377291794[2] = { "self", "expr" };
VarInfo __struct_info__1e8db4ddc1444e12_field_287 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__6636442e03391ebf, nullptr, (TypeInfo **)__type_info__abb3832951fc1e87_arg_types_var_2201614657377291794, __type_info__abb3832951fc1e87_arg_names_var_2201614657377291794, 2, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((smart_ptr_raw<Expression>,ast::AstVisitor,smart_ptr_raw<ExprConstFloat2> const ))>::size, UINT64_C(0xabb3832951fc1e87), "visitExprConstFloat2", offsetof(ast::AstVisitor,visitExprConstFloat2), 0 };
TypeInfo * __type_info__72550a12fb418ee8_arg_types_var_2201614657377291794[2] = { &__type_info__21586ce84f433a21, &__type_info__65f51082d9833a };
const char * __type_info__72550a12fb418ee8_arg_names_var_2201614657377291794[2] = { "self", "expr" };
VarInfo __struct_info__1e8db4ddc1444e12_field_288 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__af63eb4c86020609, nullptr, (TypeInfo **)__type_info__72550a12fb418ee8_arg_types_var_2201614657377291794, __type_info__72550a12fb418ee8_arg_names_var_2201614657377291794, 2, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<ExprConstFloat3> const ))>::size, UINT64_C(0x72550a12fb418ee8), "preVisitExprConstFloat3", offsetof(ast::AstVisitor,preVisitExprConstFloat3), 0 };
TypeInfo * __type_info__abb2832951fa6b87_arg_types_var_2201614657377291794[2] = { &__type_info__21586ce84f433a21, &__type_info__65f51082d9833a };
const char * __type_info__abb2832951fa6b87_arg_names_var_2201614657377291794[2] = { "self", "expr" };
VarInfo __struct_info__1e8db4ddc1444e12_field_289 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__6636442e03391ebf, nullptr, (TypeInfo **)__type_info__abb2832951fa6b87_arg_types_var_2201614657377291794, __type_info__abb2832951fa6b87_arg_names_var_2201614657377291794, 2, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((smart_ptr_raw<Expression>,ast::AstVisitor,smart_ptr_raw<ExprConstFloat3> const ))>::size, UINT64_C(0xabb2832951fa6b87), "visitExprConstFloat3", offsetof(ast::AstVisitor,visitExprConstFloat3), 0 };
TypeInfo * __type_info__72551112fb419acd_arg_types_var_2201614657377291794[2] = { &__type_info__21586ce84f433a21, &__type_info__9089610918ba11f };
const char * __type_info__72551112fb419acd_arg_names_var_2201614657377291794[2] = { "self", "expr" };
VarInfo __struct_info__1e8db4ddc1444e12_field_290 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__af63eb4c86020609, nullptr, (TypeInfo **)__type_info__72551112fb419acd_arg_types_var_2201614657377291794, __type_info__72551112fb419acd_arg_names_var_2201614657377291794, 2, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<ExprConstFloat4> const ))>::size, UINT64_C(0x72551112fb419acd), "preVisitExprConstFloat4", offsetof(ast::AstVisitor,preVisitExprConstFloat4), 0 };
TypeInfo * __type_info__abb1832951f8b887_arg_types_var_2201614657377291794[2] = { &__type_info__21586ce84f433a21, &__type_info__9089610918ba11f };
const char * __type_info__abb1832951f8b887_arg_names_var_2201614657377291794[2] = { "self", "expr" };
VarInfo __struct_info__1e8db4ddc1444e12_field_291 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__6636442e03391ebf, nullptr, (TypeInfo **)__type_info__abb1832951f8b887_arg_types_var_2201614657377291794, __type_info__abb1832951f8b887_arg_names_var_2201614657377291794, 2, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((smart_ptr_raw<Expression>,ast::AstVisitor,smart_ptr_raw<ExprConstFloat4> const ))>::size, UINT64_C(0xabb1832951f8b887), "visitExprConstFloat4", offsetof(ast::AstVisitor,visitExprConstFloat4), 0 };
TypeInfo * __type_info__6c8186fb9d866b04_arg_types_var_2201614657377291794[2] = { &__type_info__21586ce84f433a21, &__type_info__e9cb7c9300717d9e };
const char * __type_info__6c8186fb9d866b04_arg_names_var_2201614657377291794[2] = { "self", "expr" };
VarInfo __struct_info__1e8db4ddc1444e12_field_292 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__af63eb4c86020609, nullptr, (TypeInfo **)__type_info__6c8186fb9d866b04_arg_types_var_2201614657377291794, __type_info__6c8186fb9d866b04_arg_names_var_2201614657377291794, 2, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<ExprConstString> const ))>::size, UINT64_C(0x6c8186fb9d866b04), "preVisitExprConstString", offsetof(ast::AstVisitor,preVisitExprConstString), 0 };
TypeInfo * __type_info__ac4a824df3a23f27_arg_types_var_2201614657377291794[2] = { &__type_info__21586ce84f433a21, &__type_info__e9cb7c9300717d9e };
const char * __type_info__ac4a824df3a23f27_arg_names_var_2201614657377291794[2] = { "self", "expr" };
VarInfo __struct_info__1e8db4ddc1444e12_field_293 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__6636442e03391ebf, nullptr, (TypeInfo **)__type_info__ac4a824df3a23f27_arg_types_var_2201614657377291794, __type_info__ac4a824df3a23f27_arg_names_var_2201614657377291794, 2, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((smart_ptr_raw<Expression>,ast::AstVisitor,smart_ptr_raw<ExprConstString> const ))>::size, UINT64_C(0xac4a824df3a23f27), "visitExprConstString", offsetof(ast::AstVisitor,visitExprConstString), 0 };
TypeInfo * __type_info__2cab45e6e29dabd4_arg_types_var_2201614657377291794[2] = { &__type_info__21586ce84f433a21, &__type_info__7f81cc8503986a86 };
const char * __type_info__2cab45e6e29dabd4_arg_names_var_2201614657377291794[2] = { "self", "expr" };
VarInfo __struct_info__1e8db4ddc1444e12_field_294 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__af63eb4c86020609, nullptr, (TypeInfo **)__type_info__2cab45e6e29dabd4_arg_types_var_2201614657377291794, __type_info__2cab45e6e29dabd4_arg_names_var_2201614657377291794, 2, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<ExprConstDouble> const ))>::size, UINT64_C(0x2cab45e6e29dabd4), "preVisitExprConstDouble", offsetof(ast::AstVisitor,preVisitExprConstDouble), 0 };
TypeInfo * __type_info__566ddd22f95b7cfb_arg_types_var_2201614657377291794[2] = { &__type_info__21586ce84f433a21, &__type_info__7f81cc8503986a86 };
const char * __type_info__566ddd22f95b7cfb_arg_names_var_2201614657377291794[2] = { "self", "expr" };
VarInfo __struct_info__1e8db4ddc1444e12_field_295 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__6636442e03391ebf, nullptr, (TypeInfo **)__type_info__566ddd22f95b7cfb_arg_types_var_2201614657377291794, __type_info__566ddd22f95b7cfb_arg_names_var_2201614657377291794, 2, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((smart_ptr_raw<Expression>,ast::AstVisitor,smart_ptr_raw<ExprConstDouble> const ))>::size, UINT64_C(0x566ddd22f95b7cfb), "visitExprConstDouble", offsetof(ast::AstVisitor,visitExprConstDouble), 0 };
TypeInfo * __type_info__6b597ff2a170677e_arg_types_var_2201614657377291794[2] = { &__type_info__21586ce84f433a21, &__type_info__3229d47464f4ad50 };
const char * __type_info__6b597ff2a170677e_arg_names_var_2201614657377291794[2] = { "self", "expr" };
VarInfo __struct_info__1e8db4ddc1444e12_field_296 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__af63eb4c86020609, nullptr, (TypeInfo **)__type_info__6b597ff2a170677e_arg_types_var_2201614657377291794, __type_info__6b597ff2a170677e_arg_names_var_2201614657377291794, 2, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<ExprFakeContext> const ))>::size, UINT64_C(0x6b597ff2a170677e), "preVisitExprFakeContext", offsetof(ast::AstVisitor,preVisitExprFakeContext), 0 };
TypeInfo * __type_info__635ac63675961b5b_arg_types_var_2201614657377291794[2] = { &__type_info__21586ce84f433a21, &__type_info__3229d47464f4ad50 };
const char * __type_info__635ac63675961b5b_arg_names_var_2201614657377291794[2] = { "self", "expr" };
VarInfo __struct_info__1e8db4ddc1444e12_field_297 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__6636442e03391ebf, nullptr, (TypeInfo **)__type_info__635ac63675961b5b_arg_types_var_2201614657377291794, __type_info__635ac63675961b5b_arg_names_var_2201614657377291794, 2, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((smart_ptr_raw<Expression>,ast::AstVisitor,smart_ptr_raw<ExprFakeContext> const ))>::size, UINT64_C(0x635ac63675961b5b), "visitExprFakeContext", offsetof(ast::AstVisitor,visitExprFakeContext), 0 };
TypeInfo * __type_info__5790fbaa5aa10da3_arg_types_var_2201614657377291794[2] = { &__type_info__21586ce84f433a21, &__type_info__511818eae83f8137 };
const char * __type_info__5790fbaa5aa10da3_arg_names_var_2201614657377291794[2] = { "self", "expr" };
VarInfo __struct_info__1e8db4ddc1444e12_field_298 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__af63eb4c86020609, nullptr, (TypeInfo **)__type_info__5790fbaa5aa10da3_arg_types_var_2201614657377291794, __type_info__5790fbaa5aa10da3_arg_names_var_2201614657377291794, 2, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<ExprFakeLineInfo> const ))>::size, UINT64_C(0x5790fbaa5aa10da3), "preVisitExprFakeLineInfo", offsetof(ast::AstVisitor,preVisitExprFakeLineInfo), 0 };
TypeInfo * __type_info__44f160a6dbf6c463_arg_types_var_2201614657377291794[2] = { &__type_info__21586ce84f433a21, &__type_info__511818eae83f8137 };
const char * __type_info__44f160a6dbf6c463_arg_names_var_2201614657377291794[2] = { "self", "expr" };
VarInfo __struct_info__1e8db4ddc1444e12_field_299 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__6636442e03391ebf, nullptr, (TypeInfo **)__type_info__44f160a6dbf6c463_arg_types_var_2201614657377291794, __type_info__44f160a6dbf6c463_arg_names_var_2201614657377291794, 2, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((smart_ptr_raw<Expression>,ast::AstVisitor,smart_ptr_raw<ExprFakeLineInfo> const ))>::size, UINT64_C(0x44f160a6dbf6c463), "visitExprFakeLineInfo", offsetof(ast::AstVisitor,visitExprFakeLineInfo), 0 };
TypeInfo * __type_info__a1e2cce18d36fa97_arg_types_var_2201614657377291794[2] = { &__type_info__21586ce84f433a21, &__type_info__6628bcbce7db6a7d };
const char * __type_info__a1e2cce18d36fa97_arg_names_var_2201614657377291794[2] = { "self", "expr" };
VarInfo __struct_info__1e8db4ddc1444e12_field_300 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__af63eb4c86020609, nullptr, (TypeInfo **)__type_info__a1e2cce18d36fa97_arg_types_var_2201614657377291794, __type_info__a1e2cce18d36fa97_arg_names_var_2201614657377291794, 2, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<ExprReader> const ))>::size, UINT64_C(0xa1e2cce18d36fa97), "preVisitExprReader", offsetof(ast::AstVisitor,preVisitExprReader), 0 };
TypeInfo * __type_info__5992ea8a5e268051_arg_types_var_2201614657377291794[2] = { &__type_info__21586ce84f433a21, &__type_info__6628bcbce7db6a7d };
const char * __type_info__5992ea8a5e268051_arg_names_var_2201614657377291794[2] = { "self", "expr" };
VarInfo __struct_info__1e8db4ddc1444e12_field_301 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__6636442e03391ebf, nullptr, (TypeInfo **)__type_info__5992ea8a5e268051_arg_types_var_2201614657377291794, __type_info__5992ea8a5e268051_arg_names_var_2201614657377291794, 2, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((smart_ptr_raw<Expression>,ast::AstVisitor,smart_ptr_raw<ExprReader> const ))>::size, UINT64_C(0x5992ea8a5e268051), "visitExprReader", offsetof(ast::AstVisitor,visitExprReader), 0 };
TypeInfo * __type_info__893bf90e80994551_arg_types_var_2201614657377291794[2] = { &__type_info__21586ce84f433a21, &__type_info__eb22258b16c8c6df };
const char * __type_info__893bf90e80994551_arg_names_var_2201614657377291794[2] = { "self", "expr" };
VarInfo __struct_info__1e8db4ddc1444e12_field_302 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__af63eb4c86020609, nullptr, (TypeInfo **)__type_info__893bf90e80994551_arg_types_var_2201614657377291794, __type_info__893bf90e80994551_arg_names_var_2201614657377291794, 2, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<ExprUnsafe> const ))>::size, UINT64_C(0x893bf90e80994551), "preVisitExprUnsafe", offsetof(ast::AstVisitor,preVisitExprUnsafe), 0 };
TypeInfo * __type_info__436fe705f6119254_arg_types_var_2201614657377291794[2] = { &__type_info__21586ce84f433a21, &__type_info__eb22258b16c8c6df };
const char * __type_info__436fe705f6119254_arg_names_var_2201614657377291794[2] = { "self", "expr" };
VarInfo __struct_info__1e8db4ddc1444e12_field_303 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__6636442e03391ebf, nullptr, (TypeInfo **)__type_info__436fe705f6119254_arg_types_var_2201614657377291794, __type_info__436fe705f6119254_arg_names_var_2201614657377291794, 2, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((smart_ptr_raw<Expression>,ast::AstVisitor,smart_ptr_raw<ExprUnsafe> const ))>::size, UINT64_C(0x436fe705f6119254), "visitExprUnsafe", offsetof(ast::AstVisitor,visitExprUnsafe), 0 };
TypeInfo * __type_info__9e31d981d2f6e393_arg_types_var_2201614657377291794[2] = { &__type_info__21586ce84f433a21, &__type_info__636dc1714c171367 };
const char * __type_info__9e31d981d2f6e393_arg_names_var_2201614657377291794[2] = { "self", "expr" };
VarInfo __struct_info__1e8db4ddc1444e12_field_304 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__af63eb4c86020609, nullptr, (TypeInfo **)__type_info__9e31d981d2f6e393_arg_types_var_2201614657377291794, __type_info__9e31d981d2f6e393_arg_names_var_2201614657377291794, 2, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<ExprCallMacro> const ))>::size, UINT64_C(0x9e31d981d2f6e393), "preVisitExprCallMacro", offsetof(ast::AstVisitor,preVisitExprCallMacro), 0 };
TypeInfo * __type_info__8517df657f4530a_arg_types_var_2201614657377291794[2] = { &__type_info__21586ce84f433a21, &__type_info__636dc1714c171367 };
const char * __type_info__8517df657f4530a_arg_names_var_2201614657377291794[2] = { "self", "expr" };
VarInfo __struct_info__1e8db4ddc1444e12_field_305 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__6636442e03391ebf, nullptr, (TypeInfo **)__type_info__8517df657f4530a_arg_types_var_2201614657377291794, __type_info__8517df657f4530a_arg_names_var_2201614657377291794, 2, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((smart_ptr_raw<Expression>,ast::AstVisitor,smart_ptr_raw<ExprCallMacro> const ))>::size, UINT64_C(0x8517df657f4530a), "visitExprCallMacro", offsetof(ast::AstVisitor,visitExprCallMacro), 0 };
VarInfo * __struct_info__1e8db4ddc1444e12_fields[306] =  { &__struct_info__1e8db4ddc1444e12_field_0, &__struct_info__1e8db4ddc1444e12_field_1, &__struct_info__1e8db4ddc1444e12_field_2, &__struct_info__1e8db4ddc1444e12_field_3, &__struct_info__1e8db4ddc1444e12_field_4, &__struct_info__1e8db4ddc1444e12_field_5, &__struct_info__1e8db4ddc1444e12_field_6, &__struct_info__1e8db4ddc1444e12_field_7, &__struct_info__1e8db4ddc1444e12_field_8, &__struct_info__1e8db4ddc1444e12_field_9, &__struct_info__1e8db4ddc1444e12_field_10, &__struct_info__1e8db4ddc1444e12_field_11, &__struct_info__1e8db4ddc1444e12_field_12, &__struct_info__1e8db4ddc1444e12_field_13, &__struct_info__1e8db4ddc1444e12_field_14, &__struct_info__1e8db4ddc1444e12_field_15, &__struct_info__1e8db4ddc1444e12_field_16, &__struct_info__1e8db4ddc1444e12_field_17, &__struct_info__1e8db4ddc1444e12_field_18, &__struct_info__1e8db4ddc1444e12_field_19, &__struct_info__1e8db4ddc1444e12_field_20, &__struct_info__1e8db4ddc1444e12_field_21, &__struct_info__1e8db4ddc1444e12_field_22, &__struct_info__1e8db4ddc1444e12_field_23, &__struct_info__1e8db4ddc1444e12_field_24, &__struct_info__1e8db4ddc1444e12_field_25, &__struct_info__1e8db4ddc1444e12_field_26, &__struct_info__1e8db4ddc1444e12_field_27, &__struct_info__1e8db4ddc1444e12_field_28, &__struct_info__1e8db4ddc1444e12_field_29, &__struct_info__1e8db4ddc1444e12_field_30, &__struct_info__1e8db4ddc1444e12_field_31, &__struct_info__1e8db4ddc1444e12_field_32, &__struct_info__1e8db4ddc1444e12_field_33, &__struct_info__1e8db4ddc1444e12_field_34, &__struct_info__1e8db4ddc1444e12_field_35, &__struct_info__1e8db4ddc1444e12_field_36, &__struct_info__1e8db4ddc1444e12_field_37, &__struct_info__1e8db4ddc1444e12_field_38, &__struct_info__1e8db4ddc1444e12_field_39, &__struct_info__1e8db4ddc1444e12_field_40, &__struct_info__1e8db4ddc1444e12_field_41, &__struct_info__1e8db4ddc1444e12_field_42, &__struct_info__1e8db4ddc1444e12_field_43, &__struct_info__1e8db4ddc1444e12_field_44, &__struct_info__1e8db4ddc1444e12_field_45, &__struct_info__1e8db4ddc1444e12_field_46, &__struct_info__1e8db4ddc1444e12_field_47, &__struct_info__1e8db4ddc1444e12_field_48, &__struct_info__1e8db4ddc1444e12_field_49, &__struct_info__1e8db4ddc1444e12_field_50, &__struct_info__1e8db4ddc1444e12_field_51, &__struct_info__1e8db4ddc1444e12_field_52, &__struct_info__1e8db4ddc1444e12_field_53, &__struct_info__1e8db4ddc1444e12_field_54, &__struct_info__1e8db4ddc1444e12_field_55, &__struct_info__1e8db4ddc1444e12_field_56, &__struct_info__1e8db4ddc1444e12_field_57, &__struct_info__1e8db4ddc1444e12_field_58, &__struct_info__1e8db4ddc1444e12_field_59, &__struct_info__1e8db4ddc1444e12_field_60, &__struct_info__1e8db4ddc1444e12_field_61, &__struct_info__1e8db4ddc1444e12_field_62, &__struct_info__1e8db4ddc1444e12_field_63, &__struct_info__1e8db4ddc1444e12_field_64, &__struct_info__1e8db4ddc1444e12_field_65, &__struct_info__1e8db4ddc1444e12_field_66, &__struct_info__1e8db4ddc1444e12_field_67, &__struct_info__1e8db4ddc1444e12_field_68, &__struct_info__1e8db4ddc1444e12_field_69, &__struct_info__1e8db4ddc1444e12_field_70, &__struct_info__1e8db4ddc1444e12_field_71, &__struct_info__1e8db4ddc1444e12_field_72, &__struct_info__1e8db4ddc1444e12_field_73, &__struct_info__1e8db4ddc1444e12_field_74, &__struct_info__1e8db4ddc1444e12_field_75, &__struct_info__1e8db4ddc1444e12_field_76, &__struct_info__1e8db4ddc1444e12_field_77, &__struct_info__1e8db4ddc1444e12_field_78, &__struct_info__1e8db4ddc1444e12_field_79, &__struct_info__1e8db4ddc1444e12_field_80, &__struct_info__1e8db4ddc1444e12_field_81, &__struct_info__1e8db4ddc1444e12_field_82, &__struct_info__1e8db4ddc1444e12_field_83, &__struct_info__1e8db4ddc1444e12_field_84, &__struct_info__1e8db4ddc1444e12_field_85, &__struct_info__1e8db4ddc1444e12_field_86, &__struct_info__1e8db4ddc1444e12_field_87, &__struct_info__1e8db4ddc1444e12_field_88, &__struct_info__1e8db4ddc1444e12_field_89, &__struct_info__1e8db4ddc1444e12_field_90, &__struct_info__1e8db4ddc1444e12_field_91, &__struct_info__1e8db4ddc1444e12_field_92, &__struct_info__1e8db4ddc1444e12_field_93, &__struct_info__1e8db4ddc1444e12_field_94, &__struct_info__1e8db4ddc1444e12_field_95, &__struct_info__1e8db4ddc1444e12_field_96, &__struct_info__1e8db4ddc1444e12_field_97, &__struct_info__1e8db4ddc1444e12_field_98, &__struct_info__1e8db4ddc1444e12_field_99, &__struct_info__1e8db4ddc1444e12_field_100, &__struct_info__1e8db4ddc1444e12_field_101, &__struct_info__1e8db4ddc1444e12_field_102, &__struct_info__1e8db4ddc1444e12_field_103, &__struct_info__1e8db4ddc1444e12_field_104, &__struct_info__1e8db4ddc1444e12_field_105, &__struct_info__1e8db4ddc1444e12_field_106, &__struct_info__1e8db4ddc1444e12_field_107, &__struct_info__1e8db4ddc1444e12_field_108, &__struct_info__1e8db4ddc1444e12_field_109, &__struct_info__1e8db4ddc1444e12_field_110, &__struct_info__1e8db4ddc1444e12_field_111, &__struct_info__1e8db4ddc1444e12_field_112, &__struct_info__1e8db4ddc1444e12_field_113, &__struct_info__1e8db4ddc1444e12_field_114, &__struct_info__1e8db4ddc1444e12_field_115, &__struct_info__1e8db4ddc1444e12_field_116, &__struct_info__1e8db4ddc1444e12_field_117, &__struct_info__1e8db4ddc1444e12_field_118, &__struct_info__1e8db4ddc1444e12_field_119, &__struct_info__1e8db4ddc1444e12_field_120, &__struct_info__1e8db4ddc1444e12_field_121, &__struct_info__1e8db4ddc1444e12_field_122, &__struct_info__1e8db4ddc1444e12_field_123, &__struct_info__1e8db4ddc1444e12_field_124, &__struct_info__1e8db4ddc1444e12_field_125, &__struct_info__1e8db4ddc1444e12_field_126, &__struct_info__1e8db4ddc1444e12_field_127, &__struct_info__1e8db4ddc1444e12_field_128, &__struct_info__1e8db4ddc1444e12_field_129, &__struct_info__1e8db4ddc1444e12_field_130, &__struct_info__1e8db4ddc1444e12_field_131, &__struct_info__1e8db4ddc1444e12_field_132, &__struct_info__1e8db4ddc1444e12_field_133, &__struct_info__1e8db4ddc1444e12_field_134, &__struct_info__1e8db4ddc1444e12_field_135, &__struct_info__1e8db4ddc1444e12_field_136, &__struct_info__1e8db4ddc1444e12_field_137, &__struct_info__1e8db4ddc1444e12_field_138, &__struct_info__1e8db4ddc1444e12_field_139, &__struct_info__1e8db4ddc1444e12_field_140, &__struct_info__1e8db4ddc1444e12_field_141, &__struct_info__1e8db4ddc1444e12_field_142, &__struct_info__1e8db4ddc1444e12_field_143, &__struct_info__1e8db4ddc1444e12_field_144, &__struct_info__1e8db4ddc1444e12_field_145, &__struct_info__1e8db4ddc1444e12_field_146, &__struct_info__1e8db4ddc1444e12_field_147, &__struct_info__1e8db4ddc1444e12_field_148, &__struct_info__1e8db4ddc1444e12_field_149, &__struct_info__1e8db4ddc1444e12_field_150, &__struct_info__1e8db4ddc1444e12_field_151, &__struct_info__1e8db4ddc1444e12_field_152, &__struct_info__1e8db4ddc1444e12_field_153, &__struct_info__1e8db4ddc1444e12_field_154, &__struct_info__1e8db4ddc1444e12_field_155, &__struct_info__1e8db4ddc1444e12_field_156, &__struct_info__1e8db4ddc1444e12_field_157, &__struct_info__1e8db4ddc1444e12_field_158, &__struct_info__1e8db4ddc1444e12_field_159, &__struct_info__1e8db4ddc1444e12_field_160, &__struct_info__1e8db4ddc1444e12_field_161, &__struct_info__1e8db4ddc1444e12_field_162, &__struct_info__1e8db4ddc1444e12_field_163, &__struct_info__1e8db4ddc1444e12_field_164, &__struct_info__1e8db4ddc1444e12_field_165, &__struct_info__1e8db4ddc1444e12_field_166, &__struct_info__1e8db4ddc1444e12_field_167, &__struct_info__1e8db4ddc1444e12_field_168, &__struct_info__1e8db4ddc1444e12_field_169, &__struct_info__1e8db4ddc1444e12_field_170, &__struct_info__1e8db4ddc1444e12_field_171, &__struct_info__1e8db4ddc1444e12_field_172, &__struct_info__1e8db4ddc1444e12_field_173, &__struct_info__1e8db4ddc1444e12_field_174, &__struct_info__1e8db4ddc1444e12_field_175, &__struct_info__1e8db4ddc1444e12_field_176, &__struct_info__1e8db4ddc1444e12_field_177, &__struct_info__1e8db4ddc1444e12_field_178, &__struct_info__1e8db4ddc1444e12_field_179, &__struct_info__1e8db4ddc1444e12_field_180, &__struct_info__1e8db4ddc1444e12_field_181, &__struct_info__1e8db4ddc1444e12_field_182, &__struct_info__1e8db4ddc1444e12_field_183, &__struct_info__1e8db4ddc1444e12_field_184, &__struct_info__1e8db4ddc1444e12_field_185, &__struct_info__1e8db4ddc1444e12_field_186, &__struct_info__1e8db4ddc1444e12_field_187, &__struct_info__1e8db4ddc1444e12_field_188, &__struct_info__1e8db4ddc1444e12_field_189, &__struct_info__1e8db4ddc1444e12_field_190, &__struct_info__1e8db4ddc1444e12_field_191, &__struct_info__1e8db4ddc1444e12_field_192, &__struct_info__1e8db4ddc1444e12_field_193, &__struct_info__1e8db4ddc1444e12_field_194, &__struct_info__1e8db4ddc1444e12_field_195, &__struct_info__1e8db4ddc1444e12_field_196, &__struct_info__1e8db4ddc1444e12_field_197, &__struct_info__1e8db4ddc1444e12_field_198, &__struct_info__1e8db4ddc1444e12_field_199, &__struct_info__1e8db4ddc1444e12_field_200, &__struct_info__1e8db4ddc1444e12_field_201, &__struct_info__1e8db4ddc1444e12_field_202, &__struct_info__1e8db4ddc1444e12_field_203, &__struct_info__1e8db4ddc1444e12_field_204, &__struct_info__1e8db4ddc1444e12_field_205, &__struct_info__1e8db4ddc1444e12_field_206, &__struct_info__1e8db4ddc1444e12_field_207, &__struct_info__1e8db4ddc1444e12_field_208, &__struct_info__1e8db4ddc1444e12_field_209, &__struct_info__1e8db4ddc1444e12_field_210, &__struct_info__1e8db4ddc1444e12_field_211, &__struct_info__1e8db4ddc1444e12_field_212, &__struct_info__1e8db4ddc1444e12_field_213, &__struct_info__1e8db4ddc1444e12_field_214, &__struct_info__1e8db4ddc1444e12_field_215, &__struct_info__1e8db4ddc1444e12_field_216, &__struct_info__1e8db4ddc1444e12_field_217, &__struct_info__1e8db4ddc1444e12_field_218, &__struct_info__1e8db4ddc1444e12_field_219, &__struct_info__1e8db4ddc1444e12_field_220, &__struct_info__1e8db4ddc1444e12_field_221, &__struct_info__1e8db4ddc1444e12_field_222, &__struct_info__1e8db4ddc1444e12_field_223, &__struct_info__1e8db4ddc1444e12_field_224, &__struct_info__1e8db4ddc1444e12_field_225, &__struct_info__1e8db4ddc1444e12_field_226, &__struct_info__1e8db4ddc1444e12_field_227, &__struct_info__1e8db4ddc1444e12_field_228, &__struct_info__1e8db4ddc1444e12_field_229, &__struct_info__1e8db4ddc1444e12_field_230, &__struct_info__1e8db4ddc1444e12_field_231, &__struct_info__1e8db4ddc1444e12_field_232, &__struct_info__1e8db4ddc1444e12_field_233, &__struct_info__1e8db4ddc1444e12_field_234, &__struct_info__1e8db4ddc1444e12_field_235, &__struct_info__1e8db4ddc1444e12_field_236, &__struct_info__1e8db4ddc1444e12_field_237, &__struct_info__1e8db4ddc1444e12_field_238, &__struct_info__1e8db4ddc1444e12_field_239, &__struct_info__1e8db4ddc1444e12_field_240, &__struct_info__1e8db4ddc1444e12_field_241, &__struct_info__1e8db4ddc1444e12_field_242, &__struct_info__1e8db4ddc1444e12_field_243, &__struct_info__1e8db4ddc1444e12_field_244, &__struct_info__1e8db4ddc1444e12_field_245, &__struct_info__1e8db4ddc1444e12_field_246, &__struct_info__1e8db4ddc1444e12_field_247, &__struct_info__1e8db4ddc1444e12_field_248, &__struct_info__1e8db4ddc1444e12_field_249, &__struct_info__1e8db4ddc1444e12_field_250, &__struct_info__1e8db4ddc1444e12_field_251, &__struct_info__1e8db4ddc1444e12_field_252, &__struct_info__1e8db4ddc1444e12_field_253, &__struct_info__1e8db4ddc1444e12_field_254, &__struct_info__1e8db4ddc1444e12_field_255, &__struct_info__1e8db4ddc1444e12_field_256, &__struct_info__1e8db4ddc1444e12_field_257, &__struct_info__1e8db4ddc1444e12_field_258, &__struct_info__1e8db4ddc1444e12_field_259, &__struct_info__1e8db4ddc1444e12_field_260, &__struct_info__1e8db4ddc1444e12_field_261, &__struct_info__1e8db4ddc1444e12_field_262, &__struct_info__1e8db4ddc1444e12_field_263, &__struct_info__1e8db4ddc1444e12_field_264, &__struct_info__1e8db4ddc1444e12_field_265, &__struct_info__1e8db4ddc1444e12_field_266, &__struct_info__1e8db4ddc1444e12_field_267, &__struct_info__1e8db4ddc1444e12_field_268, &__struct_info__1e8db4ddc1444e12_field_269, &__struct_info__1e8db4ddc1444e12_field_270, &__struct_info__1e8db4ddc1444e12_field_271, &__struct_info__1e8db4ddc1444e12_field_272, &__struct_info__1e8db4ddc1444e12_field_273, &__struct_info__1e8db4ddc1444e12_field_274, &__struct_info__1e8db4ddc1444e12_field_275, &__struct_info__1e8db4ddc1444e12_field_276, &__struct_info__1e8db4ddc1444e12_field_277, &__struct_info__1e8db4ddc1444e12_field_278, &__struct_info__1e8db4ddc1444e12_field_279, &__struct_info__1e8db4ddc1444e12_field_280, &__struct_info__1e8db4ddc1444e12_field_281, &__struct_info__1e8db4ddc1444e12_field_282, &__struct_info__1e8db4ddc1444e12_field_283, &__struct_info__1e8db4ddc1444e12_field_284, &__struct_info__1e8db4ddc1444e12_field_285, &__struct_info__1e8db4ddc1444e12_field_286, &__struct_info__1e8db4ddc1444e12_field_287, &__struct_info__1e8db4ddc1444e12_field_288, &__struct_info__1e8db4ddc1444e12_field_289, &__struct_info__1e8db4ddc1444e12_field_290, &__struct_info__1e8db4ddc1444e12_field_291, &__struct_info__1e8db4ddc1444e12_field_292, &__struct_info__1e8db4ddc1444e12_field_293, &__struct_info__1e8db4ddc1444e12_field_294, &__struct_info__1e8db4ddc1444e12_field_295, &__struct_info__1e8db4ddc1444e12_field_296, &__struct_info__1e8db4ddc1444e12_field_297, &__struct_info__1e8db4ddc1444e12_field_298, &__struct_info__1e8db4ddc1444e12_field_299, &__struct_info__1e8db4ddc1444e12_field_300, &__struct_info__1e8db4ddc1444e12_field_301, &__struct_info__1e8db4ddc1444e12_field_302, &__struct_info__1e8db4ddc1444e12_field_303, &__struct_info__1e8db4ddc1444e12_field_304, &__struct_info__1e8db4ddc1444e12_field_305 };
StructInfo __struct_info__1e8db4ddc1444e12 = {"AstVisitor", "ast", 13, __struct_info__1e8db4ddc1444e12_fields, 306, TypeSize<ast::AstVisitor>::size, UINT64_C(0x0), nullptr, UINT64_C(0x1e8db4ddc1444e12), 0 };
VarInfo __struct_info__9a70e6afd95b0571_field_0 =  { Type::tPointer, nullptr, nullptr, nullptr, &__type_info__af63eb4c86020609, nullptr, nullptr, nullptr, 0, 0, nullptr, 8204, TypeSize<void *>::size, UINT64_C(0x76a4927d5ad21a80), "__rtti", offsetof(soa::CollectAndReplaceIteratorFields,__rtti), 306 };
TypeInfo * __type_info__9a9fa473c4c4537_arg_types_var_11128648322172781937[1] = { &__type_info__21586ce84f433a21 };
const char * __type_info__9a9fa473c4c4537_arg_names_var_11128648322172781937[1] = { "self" };
VarInfo __struct_info__9a70e6afd95b0571_field_1 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__af63eb4c86020609, nullptr, (TypeInfo **)__type_info__9a9fa473c4c4537_arg_types_var_11128648322172781937, __type_info__9a9fa473c4c4537_arg_names_var_11128648322172781937, 1, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((void,ast::AstVisitor))>::size, UINT64_C(0x9a9fa473c4c4537), "__finalize", offsetof(soa::CollectAndReplaceIteratorFields,__finalize), 0 };
TypeInfo * __type_info__cdceb2b3bebb0555_arg_types_var_11128648322172781937[2] = { &__type_info__21586ce84f433a21, &__type_info__e57b0f261f47b890 };
const char * __type_info__cdceb2b3bebb0555_arg_names_var_11128648322172781937[2] = { "self", "prog" };
VarInfo __struct_info__9a70e6afd95b0571_field_2 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__af63eb4c86020609, nullptr, (TypeInfo **)__type_info__cdceb2b3bebb0555_arg_types_var_11128648322172781937, __type_info__cdceb2b3bebb0555_arg_names_var_11128648322172781937, 2, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<Program> const ))>::size, UINT64_C(0xcdceb2b3bebb0555), "preVisitProgram", offsetof(soa::CollectAndReplaceIteratorFields,preVisitProgram), 0 };
TypeInfo * __type_info__90570fa8b6c1cae8_arg_types_var_11128648322172781937[2] = { &__type_info__21586ce84f433a21, &__type_info__e57b0f261f47b890 };
const char * __type_info__90570fa8b6c1cae8_arg_names_var_11128648322172781937[2] = { "self", "porg" };
VarInfo __struct_info__9a70e6afd95b0571_field_3 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__af63eb4c86020609, nullptr, (TypeInfo **)__type_info__90570fa8b6c1cae8_arg_types_var_11128648322172781937, __type_info__90570fa8b6c1cae8_arg_names_var_11128648322172781937, 2, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<Program> const ))>::size, UINT64_C(0x90570fa8b6c1cae8), "visitProgram", offsetof(soa::CollectAndReplaceIteratorFields,visitProgram), 0 };
TypeInfo * __type_info__8e7904608f35b403_arg_types_var_11128648322172781937[3] = { &__type_info__21586ce84f433a21, &__type_info__e57b0f261f47b890, &__type_info__e266b5ccef058802 };
const char * __type_info__8e7904608f35b403_arg_names_var_11128648322172781937[3] = { "self", "prog", "mod" };
VarInfo __struct_info__9a70e6afd95b0571_field_4 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__af63eb4c86020609, nullptr, (TypeInfo **)__type_info__8e7904608f35b403_arg_types_var_11128648322172781937, __type_info__8e7904608f35b403_arg_names_var_11128648322172781937, 3, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<Program> const ,Module * const ))>::size, UINT64_C(0x8e7904608f35b403), "preVisitProgramBody", offsetof(soa::CollectAndReplaceIteratorFields,preVisitProgramBody), 0 };
TypeInfo * __type_info__bcd8ae93d7ca8bbc_arg_types_var_11128648322172781937[2] = { &__type_info__21586ce84f433a21, &__type_info__e266b5ccef058802 };
const char * __type_info__bcd8ae93d7ca8bbc_arg_names_var_11128648322172781937[2] = { "self", "mod" };
VarInfo __struct_info__9a70e6afd95b0571_field_5 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__af63eb4c86020609, nullptr, (TypeInfo **)__type_info__bcd8ae93d7ca8bbc_arg_types_var_11128648322172781937, __type_info__bcd8ae93d7ca8bbc_arg_names_var_11128648322172781937, 2, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((void,ast::AstVisitor,Module * const ))>::size, UINT64_C(0xbcd8ae93d7ca8bbc), "preVisitModule", offsetof(soa::CollectAndReplaceIteratorFields,preVisitModule), 0 };
TypeInfo * __type_info__5b062baf8939cab7_arg_types_var_11128648322172781937[2] = { &__type_info__21586ce84f433a21, &__type_info__e266b5ccef058802 };
const char * __type_info__5b062baf8939cab7_arg_names_var_11128648322172781937[2] = { "self", "mod" };
VarInfo __struct_info__9a70e6afd95b0571_field_6 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__af63eb4c86020609, nullptr, (TypeInfo **)__type_info__5b062baf8939cab7_arg_types_var_11128648322172781937, __type_info__5b062baf8939cab7_arg_names_var_11128648322172781937, 2, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((void,ast::AstVisitor,Module * const ))>::size, UINT64_C(0x5b062baf8939cab7), "visitModule", offsetof(soa::CollectAndReplaceIteratorFields,visitModule), 0 };
TypeInfo * __type_info__847a1c1872d021a4_arg_types_var_11128648322172781937[2] = { &__type_info__21586ce84f433a21, &__type_info__3b037c8d587730b0 };
const char * __type_info__847a1c1872d021a4_arg_names_var_11128648322172781937[2] = { "self", "expr" };
VarInfo __struct_info__9a70e6afd95b0571_field_7 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__af63eb4c86020609, nullptr, (TypeInfo **)__type_info__847a1c1872d021a4_arg_types_var_11128648322172781937, __type_info__847a1c1872d021a4_arg_names_var_11128648322172781937, 2, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<ExprTypeDecl> const ))>::size, UINT64_C(0x847a1c1872d021a4), "preVisitExprTypeDecl", offsetof(soa::CollectAndReplaceIteratorFields,preVisitExprTypeDecl), 0 };
TypeInfo * __type_info__bc7e7ece5c20ff7c_arg_types_var_11128648322172781937[2] = { &__type_info__21586ce84f433a21, &__type_info__3b037c8d587730b0 };
const char * __type_info__bc7e7ece5c20ff7c_arg_names_var_11128648322172781937[2] = { "self", "expr" };
VarInfo __struct_info__9a70e6afd95b0571_field_8 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__6636442e03391ebf, nullptr, (TypeInfo **)__type_info__bc7e7ece5c20ff7c_arg_types_var_11128648322172781937, __type_info__bc7e7ece5c20ff7c_arg_names_var_11128648322172781937, 2, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((smart_ptr_raw<Expression>,ast::AstVisitor,smart_ptr_raw<ExprTypeDecl> const ))>::size, UINT64_C(0xbc7e7ece5c20ff7c), "visitExprTypeDecl", offsetof(soa::CollectAndReplaceIteratorFields,visitExprTypeDecl), 0 };
TypeInfo * __type_info__cb473bd4f767da_arg_types_var_11128648322172781937[2] = { &__type_info__21586ce84f433a21, &__type_info__defb2f7795e0cf8c };
const char * __type_info__cb473bd4f767da_arg_names_var_11128648322172781937[2] = { "self", "typ" };
VarInfo __struct_info__9a70e6afd95b0571_field_9 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__af63eb4c86020609, nullptr, (TypeInfo **)__type_info__cb473bd4f767da_arg_types_var_11128648322172781937, __type_info__cb473bd4f767da_arg_names_var_11128648322172781937, 2, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<TypeDecl> const ))>::size, UINT64_C(0xcb473bd4f767da), "preVisitTypeDecl", offsetof(soa::CollectAndReplaceIteratorFields,preVisitTypeDecl), 0 };
TypeInfo * __type_info__d8673e55d20f4a41_arg_types_var_11128648322172781937[2] = { &__type_info__21586ce84f433a21, &__type_info__defb2f7795e0cf8c };
const char * __type_info__d8673e55d20f4a41_arg_names_var_11128648322172781937[2] = { "self", "typ" };
VarInfo __struct_info__9a70e6afd95b0571_field_10 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__afcf203e0d7d50d, nullptr, (TypeInfo **)__type_info__d8673e55d20f4a41_arg_types_var_11128648322172781937, __type_info__d8673e55d20f4a41_arg_names_var_11128648322172781937, 2, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((smart_ptr_raw<TypeDecl>,ast::AstVisitor,smart_ptr_raw<TypeDecl> const ))>::size, UINT64_C(0xd8673e55d20f4a41), "visitTypeDecl", offsetof(soa::CollectAndReplaceIteratorFields,visitTypeDecl), 0 };
TypeInfo * __type_info__14c4e8e8cf0a8d5e_arg_types_var_11128648322172781937[3] = { &__type_info__21586ce84f433a21, &__type_info__defb2f7795e0cf8c, &__type_info__624d371c76b25aa4 };
const char * __type_info__14c4e8e8cf0a8d5e_arg_names_var_11128648322172781937[3] = { "self", "typ", "name" };
VarInfo __struct_info__9a70e6afd95b0571_field_11 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__af63eb4c86020609, nullptr, (TypeInfo **)__type_info__14c4e8e8cf0a8d5e_arg_types_var_11128648322172781937, __type_info__14c4e8e8cf0a8d5e_arg_names_var_11128648322172781937, 3, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<TypeDecl> const ,das::string const ))>::size, UINT64_C(0x14c4e8e8cf0a8d5e), "preVisitAlias", offsetof(soa::CollectAndReplaceIteratorFields,preVisitAlias), 0 };
TypeInfo * __type_info__2ef9dca1782d67af_arg_types_var_11128648322172781937[3] = { &__type_info__21586ce84f433a21, &__type_info__defb2f7795e0cf8c, &__type_info__624d371c76b25aa4 };
const char * __type_info__2ef9dca1782d67af_arg_names_var_11128648322172781937[3] = { "self", "typ", "name" };
VarInfo __struct_info__9a70e6afd95b0571_field_12 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__afcf203e0d7d50d, nullptr, (TypeInfo **)__type_info__2ef9dca1782d67af_arg_types_var_11128648322172781937, __type_info__2ef9dca1782d67af_arg_names_var_11128648322172781937, 3, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((smart_ptr_raw<TypeDecl>,ast::AstVisitor,smart_ptr_raw<TypeDecl> const ,das::string const ))>::size, UINT64_C(0x2ef9dca1782d67af), "visitAlias", offsetof(soa::CollectAndReplaceIteratorFields,visitAlias), 0 };
TypeInfo * __type_info__296197f91d6017ce_arg_types_var_11128648322172781937[2] = { &__type_info__21586ce84f433a21, &__type_info__7c61f7ae88617bb2 };
const char * __type_info__296197f91d6017ce_arg_names_var_11128648322172781937[2] = { "self", "arg" };
VarInfo __struct_info__9a70e6afd95b0571_field_13 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__af63df4c8601f1a5, nullptr, (TypeInfo **)__type_info__296197f91d6017ce_arg_types_var_11128648322172781937, __type_info__296197f91d6017ce_arg_names_var_11128648322172781937, 2, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((bool,ast::AstVisitor,Enumeration * const ))>::size, UINT64_C(0x296197f91d6017ce), "canVisitEnumeration", offsetof(soa::CollectAndReplaceIteratorFields,canVisitEnumeration), 0 };
TypeInfo * __type_info__3a32f1919c6974a7_arg_types_var_11128648322172781937[2] = { &__type_info__21586ce84f433a21, &__type_info__586f0da79a6e613d };
const char * __type_info__3a32f1919c6974a7_arg_names_var_11128648322172781937[2] = { "self", "enu" };
VarInfo __struct_info__9a70e6afd95b0571_field_14 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__af63eb4c86020609, nullptr, (TypeInfo **)__type_info__3a32f1919c6974a7_arg_types_var_11128648322172781937, __type_info__3a32f1919c6974a7_arg_names_var_11128648322172781937, 2, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<Enumeration> const ))>::size, UINT64_C(0x3a32f1919c6974a7), "preVisitEnumeration", offsetof(soa::CollectAndReplaceIteratorFields,preVisitEnumeration), 0 };
TypeInfo * __type_info__a3cca9e2fe372e8_arg_types_var_11128648322172781937[5] = { &__type_info__21586ce84f433a21, &__type_info__586f0da79a6e613d, &__type_info__624d371c76b25aa4, &__type_info__98064c57b4bcca5a, &__type_info__af81fe4c86352052 };
const char * __type_info__a3cca9e2fe372e8_arg_names_var_11128648322172781937[5] = { "self", "enu", "name", "value", "last" };
VarInfo __struct_info__9a70e6afd95b0571_field_15 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__af63eb4c86020609, nullptr, (TypeInfo **)__type_info__a3cca9e2fe372e8_arg_types_var_11128648322172781937, __type_info__a3cca9e2fe372e8_arg_names_var_11128648322172781937, 5, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<Enumeration> const ,das::string const ,smart_ptr_raw<Expression> const ,bool))>::size, UINT64_C(0xa3cca9e2fe372e8), "preVisitEnumerationValue", offsetof(soa::CollectAndReplaceIteratorFields,preVisitEnumerationValue), 0 };
TypeInfo * __type_info__6731bf006fb58b05_arg_types_var_11128648322172781937[5] = { &__type_info__21586ce84f433a21, &__type_info__586f0da79a6e613d, &__type_info__624d371c76b25aa4, &__type_info__98064c57b4bcca5a, &__type_info__af81fe4c86352052 };
const char * __type_info__6731bf006fb58b05_arg_names_var_11128648322172781937[5] = { "self", "enu", "name", "value", "last" };
VarInfo __struct_info__9a70e6afd95b0571_field_16 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__6636442e03391ebf, nullptr, (TypeInfo **)__type_info__6731bf006fb58b05_arg_types_var_11128648322172781937, __type_info__6731bf006fb58b05_arg_names_var_11128648322172781937, 5, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((smart_ptr_raw<Expression>,ast::AstVisitor,smart_ptr_raw<Enumeration> const ,das::string const ,smart_ptr_raw<Expression> const ,bool))>::size, UINT64_C(0x6731bf006fb58b05), "visitEnumerationValue", offsetof(soa::CollectAndReplaceIteratorFields,visitEnumerationValue), 0 };
TypeInfo * __type_info__4ecd1d3535af0bc7_arg_types_var_11128648322172781937[2] = { &__type_info__21586ce84f433a21, &__type_info__586f0da79a6e613d };
const char * __type_info__4ecd1d3535af0bc7_arg_names_var_11128648322172781937[2] = { "self", "enu" };
VarInfo __struct_info__9a70e6afd95b0571_field_17 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__e4765bc563f255e, nullptr, (TypeInfo **)__type_info__4ecd1d3535af0bc7_arg_types_var_11128648322172781937, __type_info__4ecd1d3535af0bc7_arg_names_var_11128648322172781937, 2, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((smart_ptr_raw<Enumeration>,ast::AstVisitor,smart_ptr_raw<Enumeration> const ))>::size, UINT64_C(0x4ecd1d3535af0bc7), "visitEnumeration", offsetof(soa::CollectAndReplaceIteratorFields,visitEnumeration), 0 };
TypeInfo * __type_info__61eb02e4f38a6b6b_arg_types_var_11128648322172781937[2] = { &__type_info__21586ce84f433a21, &__type_info__f9220d94c6b964b5 };
const char * __type_info__61eb02e4f38a6b6b_arg_names_var_11128648322172781937[2] = { "self", "arg" };
VarInfo __struct_info__9a70e6afd95b0571_field_18 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__af63df4c8601f1a5, nullptr, (TypeInfo **)__type_info__61eb02e4f38a6b6b_arg_types_var_11128648322172781937, __type_info__61eb02e4f38a6b6b_arg_names_var_11128648322172781937, 2, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((bool,ast::AstVisitor,Structure * const ))>::size, UINT64_C(0x61eb02e4f38a6b6b), "canVisitStructure", offsetof(soa::CollectAndReplaceIteratorFields,canVisitStructure), 0 };
TypeInfo * __type_info__475555cc9038a4b0_arg_types_var_11128648322172781937[2] = { &__type_info__21586ce84f433a21, &__type_info__d6b8ed05d16e9f27 };
const char * __type_info__475555cc9038a4b0_arg_names_var_11128648322172781937[2] = { "self", "str" };
VarInfo __struct_info__9a70e6afd95b0571_field_19 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__af63eb4c86020609, nullptr, (TypeInfo **)__type_info__475555cc9038a4b0_arg_types_var_11128648322172781937, __type_info__475555cc9038a4b0_arg_names_var_11128648322172781937, 2, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<Structure> const ))>::size, UINT64_C(0x475555cc9038a4b0), "preVisitStructure", offsetof(soa::CollectAndReplaceIteratorFields,preVisitStructure), 0 };
TypeInfo * __type_info__8ed3193543added3_arg_types_var_11128648322172781937[4] = { &__type_info__21586ce84f433a21, &__type_info__d6b8ed05d16e9f27, &__type_info__29c0090cdbf7525c, &__type_info__af81fe4c86352052 };
const char * __type_info__8ed3193543added3_arg_names_var_11128648322172781937[4] = { "self", "str", "decl", "last" };
VarInfo __struct_info__9a70e6afd95b0571_field_20 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__af63eb4c86020609, nullptr, (TypeInfo **)__type_info__8ed3193543added3_arg_types_var_11128648322172781937, __type_info__8ed3193543added3_arg_names_var_11128648322172781937, 4, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<Structure> const ,Structure::FieldDeclaration const ,bool))>::size, UINT64_C(0x8ed3193543added3), "preVisitStructureField", offsetof(soa::CollectAndReplaceIteratorFields,preVisitStructureField), 0 };
TypeInfo * __type_info__7daf7a9574198a34_arg_types_var_11128648322172781937[2] = { &__type_info__21586ce84f433a21, &__type_info__d6b8ed05d16e9f27 };
const char * __type_info__7daf7a9574198a34_arg_names_var_11128648322172781937[2] = { "self", "st" };
VarInfo __struct_info__9a70e6afd95b0571_field_21 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__af63df4c8601f1a5, nullptr, (TypeInfo **)__type_info__7daf7a9574198a34_arg_types_var_11128648322172781937, __type_info__7daf7a9574198a34_arg_names_var_11128648322172781937, 2, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((bool,ast::AstVisitor,smart_ptr_raw<Structure> const ))>::size, UINT64_C(0x7daf7a9574198a34), "canVisitStructureFieldInit", offsetof(soa::CollectAndReplaceIteratorFields,canVisitStructureFieldInit), 0 };
TypeInfo * __type_info__ed3905e9344b5799_arg_types_var_11128648322172781937[4] = { &__type_info__21586ce84f433a21, &__type_info__d6b8ed05d16e9f27, &__type_info__29c0090cdbf7525c, &__type_info__af81fe4c86352052 };
const char * __type_info__ed3905e9344b5799_arg_names_var_11128648322172781937[4] = { "self", "str", "decl", "last" };
VarInfo __struct_info__9a70e6afd95b0571_field_22 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__af63eb4c86020609, nullptr, (TypeInfo **)__type_info__ed3905e9344b5799_arg_types_var_11128648322172781937, __type_info__ed3905e9344b5799_arg_names_var_11128648322172781937, 4, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<Structure> const ,Structure::FieldDeclaration const ,bool))>::size, UINT64_C(0xed3905e9344b5799), "visitStructureField", offsetof(soa::CollectAndReplaceIteratorFields,visitStructureField), 0 };
TypeInfo * __type_info__836e83dee791f5bc_arg_types_var_11128648322172781937[2] = { &__type_info__21586ce84f433a21, &__type_info__d6b8ed05d16e9f27 };
const char * __type_info__836e83dee791f5bc_arg_names_var_11128648322172781937[2] = { "self", "str" };
VarInfo __struct_info__9a70e6afd95b0571_field_23 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__7e104fcf0cd430e4, nullptr, (TypeInfo **)__type_info__836e83dee791f5bc_arg_types_var_11128648322172781937, __type_info__836e83dee791f5bc_arg_names_var_11128648322172781937, 2, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((smart_ptr_raw<Structure>,ast::AstVisitor,smart_ptr_raw<Structure> const ))>::size, UINT64_C(0x836e83dee791f5bc), "visitStructure", offsetof(soa::CollectAndReplaceIteratorFields,visitStructure), 0 };
TypeInfo * __type_info__4c112679d4ccf5c5_arg_types_var_11128648322172781937[2] = { &__type_info__21586ce84f433a21, &__type_info__34b7c04894c15d5 };
const char * __type_info__4c112679d4ccf5c5_arg_names_var_11128648322172781937[2] = { "self", "fun" };
VarInfo __struct_info__9a70e6afd95b0571_field_24 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__af63df4c8601f1a5, nullptr, (TypeInfo **)__type_info__4c112679d4ccf5c5_arg_types_var_11128648322172781937, __type_info__4c112679d4ccf5c5_arg_names_var_11128648322172781937, 2, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((bool,ast::AstVisitor,Function * const ))>::size, UINT64_C(0x4c112679d4ccf5c5), "canVisitFunction", offsetof(soa::CollectAndReplaceIteratorFields,canVisitFunction), 0 };
TypeInfo * __type_info__2f352a33ffa6381b_arg_types_var_11128648322172781937[4] = { &__type_info__21586ce84f433a21, &__type_info__34b7c04894c15d5, &__type_info__a3a6bcfebaf8fcd8, &__type_info__98064c57b4bcca5a };
const char * __type_info__2f352a33ffa6381b_arg_names_var_11128648322172781937[4] = { "self", "fun", "arg", "value" };
VarInfo __struct_info__9a70e6afd95b0571_field_25 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__af63df4c8601f1a5, nullptr, (TypeInfo **)__type_info__2f352a33ffa6381b_arg_types_var_11128648322172781937, __type_info__2f352a33ffa6381b_arg_names_var_11128648322172781937, 4, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((bool,ast::AstVisitor,Function * const ,smart_ptr_raw<Variable> const ,smart_ptr_raw<Expression> const ))>::size, UINT64_C(0x2f352a33ffa6381b), "canVisitFunctionArgumentInit", offsetof(soa::CollectAndReplaceIteratorFields,canVisitFunctionArgumentInit), 0 };
TypeInfo * __type_info__284bdc38aee4748a_arg_types_var_11128648322172781937[2] = { &__type_info__21586ce84f433a21, &__type_info__9d10785eb07580e0 };
const char * __type_info__284bdc38aee4748a_arg_names_var_11128648322172781937[2] = { "self", "fun" };
VarInfo __struct_info__9a70e6afd95b0571_field_26 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__af63eb4c86020609, nullptr, (TypeInfo **)__type_info__284bdc38aee4748a_arg_types_var_11128648322172781937, __type_info__284bdc38aee4748a_arg_names_var_11128648322172781937, 2, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<Function> const ))>::size, UINT64_C(0x284bdc38aee4748a), "preVisitFunction", offsetof(soa::CollectAndReplaceIteratorFields,preVisitFunction), 0 };
TypeInfo * __type_info__40bb9ff4a94952a5_arg_types_var_11128648322172781937[2] = { &__type_info__21586ce84f433a21, &__type_info__9d10785eb07580e0 };
const char * __type_info__40bb9ff4a94952a5_arg_names_var_11128648322172781937[2] = { "self", "fun" };
VarInfo __struct_info__9a70e6afd95b0571_field_27 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__4cdbed951d30a5d1, nullptr, (TypeInfo **)__type_info__40bb9ff4a94952a5_arg_types_var_11128648322172781937, __type_info__40bb9ff4a94952a5_arg_names_var_11128648322172781937, 2, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((smart_ptr_raw<Function>,ast::AstVisitor,smart_ptr_raw<Function> const ))>::size, UINT64_C(0x40bb9ff4a94952a5), "visitFunction", offsetof(soa::CollectAndReplaceIteratorFields,visitFunction), 0 };
TypeInfo * __type_info__5f19ef07896f8876_arg_types_var_11128648322172781937[4] = { &__type_info__21586ce84f433a21, &__type_info__9d10785eb07580e0, &__type_info__a3a6bcfebaf8fcd8, &__type_info__af81fe4c86352052 };
const char * __type_info__5f19ef07896f8876_arg_names_var_11128648322172781937[4] = { "self", "fun", "arg", "lastArg" };
VarInfo __struct_info__9a70e6afd95b0571_field_28 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__af63eb4c86020609, nullptr, (TypeInfo **)__type_info__5f19ef07896f8876_arg_types_var_11128648322172781937, __type_info__5f19ef07896f8876_arg_names_var_11128648322172781937, 4, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<Function> const ,smart_ptr_raw<Variable> const ,bool))>::size, UINT64_C(0x5f19ef07896f8876), "preVisitFunctionArgument", offsetof(soa::CollectAndReplaceIteratorFields,preVisitFunctionArgument), 0 };
TypeInfo * __type_info__570a85b93c9e800e_arg_types_var_11128648322172781937[4] = { &__type_info__21586ce84f433a21, &__type_info__9d10785eb07580e0, &__type_info__a3a6bcfebaf8fcd8, &__type_info__af81fe4c86352052 };
const char * __type_info__570a85b93c9e800e_arg_names_var_11128648322172781937[4] = { "self", "fun", "arg", "lastArg" };
VarInfo __struct_info__9a70e6afd95b0571_field_29 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__4d5fdda373bcfbd1, nullptr, (TypeInfo **)__type_info__570a85b93c9e800e_arg_types_var_11128648322172781937, __type_info__570a85b93c9e800e_arg_names_var_11128648322172781937, 4, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((smart_ptr_raw<Variable>,ast::AstVisitor,smart_ptr_raw<Function> const ,smart_ptr_raw<Variable> const ,bool))>::size, UINT64_C(0x570a85b93c9e800e), "visitFunctionArgument", offsetof(soa::CollectAndReplaceIteratorFields,visitFunctionArgument), 0 };
TypeInfo * __type_info__ae988f089f74d174_arg_types_var_11128648322172781937[4] = { &__type_info__21586ce84f433a21, &__type_info__9d10785eb07580e0, &__type_info__a3a6bcfebaf8fcd8, &__type_info__98064c57b4bcca5a };
const char * __type_info__ae988f089f74d174_arg_names_var_11128648322172781937[4] = { "self", "fun", "arg", "value" };
VarInfo __struct_info__9a70e6afd95b0571_field_30 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__af63eb4c86020609, nullptr, (TypeInfo **)__type_info__ae988f089f74d174_arg_types_var_11128648322172781937, __type_info__ae988f089f74d174_arg_names_var_11128648322172781937, 4, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<Function> const ,smart_ptr_raw<Variable> const ,smart_ptr_raw<Expression> const ))>::size, UINT64_C(0xae988f089f74d174), "preVisitFunctionArgumentInit", offsetof(soa::CollectAndReplaceIteratorFields,preVisitFunctionArgumentInit), 0 };
TypeInfo * __type_info__6e2e95a97eca3ca4_arg_types_var_11128648322172781937[4] = { &__type_info__21586ce84f433a21, &__type_info__9d10785eb07580e0, &__type_info__a3a6bcfebaf8fcd8, &__type_info__98064c57b4bcca5a };
const char * __type_info__6e2e95a97eca3ca4_arg_names_var_11128648322172781937[4] = { "self", "fun", "arg", "value" };
VarInfo __struct_info__9a70e6afd95b0571_field_31 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__6636442e03391ebf, nullptr, (TypeInfo **)__type_info__6e2e95a97eca3ca4_arg_types_var_11128648322172781937, __type_info__6e2e95a97eca3ca4_arg_names_var_11128648322172781937, 4, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((smart_ptr_raw<Expression>,ast::AstVisitor,smart_ptr_raw<Function> const ,smart_ptr_raw<Variable> const ,smart_ptr_raw<Expression> const ))>::size, UINT64_C(0x6e2e95a97eca3ca4), "visitFunctionArgumentInit", offsetof(soa::CollectAndReplaceIteratorFields,visitFunctionArgumentInit), 0 };
TypeInfo * __type_info__1e2e69c27116da52_arg_types_var_11128648322172781937[3] = { &__type_info__21586ce84f433a21, &__type_info__9d10785eb07580e0, &__type_info__98064c57b4bcca5a };
const char * __type_info__1e2e69c27116da52_arg_names_var_11128648322172781937[3] = { "self", "fun", "expr" };
VarInfo __struct_info__9a70e6afd95b0571_field_32 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__af63eb4c86020609, nullptr, (TypeInfo **)__type_info__1e2e69c27116da52_arg_types_var_11128648322172781937, __type_info__1e2e69c27116da52_arg_names_var_11128648322172781937, 3, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<Function> const ,smart_ptr_raw<Expression> const ))>::size, UINT64_C(0x1e2e69c27116da52), "preVisitFunctionBody", offsetof(soa::CollectAndReplaceIteratorFields,preVisitFunctionBody), 0 };
TypeInfo * __type_info__e55248dd8aafa053_arg_types_var_11128648322172781937[3] = { &__type_info__21586ce84f433a21, &__type_info__9d10785eb07580e0, &__type_info__98064c57b4bcca5a };
const char * __type_info__e55248dd8aafa053_arg_names_var_11128648322172781937[3] = { "self", "fun", "expr" };
VarInfo __struct_info__9a70e6afd95b0571_field_33 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__6636442e03391ebf, nullptr, (TypeInfo **)__type_info__e55248dd8aafa053_arg_types_var_11128648322172781937, __type_info__e55248dd8aafa053_arg_names_var_11128648322172781937, 3, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((smart_ptr_raw<Expression>,ast::AstVisitor,smart_ptr_raw<Function> const ,smart_ptr_raw<Expression> const ))>::size, UINT64_C(0xe55248dd8aafa053), "visitFunctionBody", offsetof(soa::CollectAndReplaceIteratorFields,visitFunctionBody), 0 };
TypeInfo * __type_info__73447c30ce0cf9eb_arg_types_var_11128648322172781937[2] = { &__type_info__21586ce84f433a21, &__type_info__98064c57b4bcca5a };
const char * __type_info__73447c30ce0cf9eb_arg_names_var_11128648322172781937[2] = { "self", "expr" };
VarInfo __struct_info__9a70e6afd95b0571_field_34 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__af63eb4c86020609, nullptr, (TypeInfo **)__type_info__73447c30ce0cf9eb_arg_types_var_11128648322172781937, __type_info__73447c30ce0cf9eb_arg_names_var_11128648322172781937, 2, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<Expression> const ))>::size, UINT64_C(0x73447c30ce0cf9eb), "preVisitExpression", offsetof(soa::CollectAndReplaceIteratorFields,preVisitExpression), 0 };
TypeInfo * __type_info__80abb2744c03bd72_arg_types_var_11128648322172781937[2] = { &__type_info__21586ce84f433a21, &__type_info__98064c57b4bcca5a };
const char * __type_info__80abb2744c03bd72_arg_names_var_11128648322172781937[2] = { "self", "expr" };
VarInfo __struct_info__9a70e6afd95b0571_field_35 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__6636442e03391ebf, nullptr, (TypeInfo **)__type_info__80abb2744c03bd72_arg_types_var_11128648322172781937, __type_info__80abb2744c03bd72_arg_names_var_11128648322172781937, 2, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((smart_ptr_raw<Expression>,ast::AstVisitor,smart_ptr_raw<Expression> const ))>::size, UINT64_C(0x80abb2744c03bd72), "visitExpression", offsetof(soa::CollectAndReplaceIteratorFields,visitExpression), 0 };
TypeInfo * __type_info__83095408592944ee_arg_types_var_11128648322172781937[2] = { &__type_info__21586ce84f433a21, &__type_info__4dee28f2a93bbef7 };
const char * __type_info__83095408592944ee_arg_names_var_11128648322172781937[2] = { "self", "blk" };
VarInfo __struct_info__9a70e6afd95b0571_field_36 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__af63eb4c86020609, nullptr, (TypeInfo **)__type_info__83095408592944ee_arg_types_var_11128648322172781937, __type_info__83095408592944ee_arg_names_var_11128648322172781937, 2, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<ExprBlock> const ))>::size, UINT64_C(0x83095408592944ee), "preVisitExprBlock", offsetof(soa::CollectAndReplaceIteratorFields,preVisitExprBlock), 0 };
TypeInfo * __type_info__80fc15845a773f4f_arg_types_var_11128648322172781937[2] = { &__type_info__21586ce84f433a21, &__type_info__4dee28f2a93bbef7 };
const char * __type_info__80fc15845a773f4f_arg_names_var_11128648322172781937[2] = { "self", "blk" };
VarInfo __struct_info__9a70e6afd95b0571_field_37 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__6636442e03391ebf, nullptr, (TypeInfo **)__type_info__80fc15845a773f4f_arg_types_var_11128648322172781937, __type_info__80fc15845a773f4f_arg_names_var_11128648322172781937, 2, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((smart_ptr_raw<Expression>,ast::AstVisitor,smart_ptr_raw<ExprBlock> const ))>::size, UINT64_C(0x80fc15845a773f4f), "visitExprBlock", offsetof(soa::CollectAndReplaceIteratorFields,visitExprBlock), 0 };
TypeInfo * __type_info__386a7b1908f8e555_arg_types_var_11128648322172781937[4] = { &__type_info__21586ce84f433a21, &__type_info__4dee28f2a93bbef7, &__type_info__a3a6bcfebaf8fcd8, &__type_info__af81fe4c86352052 };
const char * __type_info__386a7b1908f8e555_arg_names_var_11128648322172781937[4] = { "self", "blk", "arg", "lastArg" };
VarInfo __struct_info__9a70e6afd95b0571_field_38 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__af63eb4c86020609, nullptr, (TypeInfo **)__type_info__386a7b1908f8e555_arg_types_var_11128648322172781937, __type_info__386a7b1908f8e555_arg_names_var_11128648322172781937, 4, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<ExprBlock> const ,smart_ptr_raw<Variable> const ,bool))>::size, UINT64_C(0x386a7b1908f8e555), "preVisitExprBlockArgument", offsetof(soa::CollectAndReplaceIteratorFields,preVisitExprBlockArgument), 0 };
TypeInfo * __type_info__49fa2e6b9b70b307_arg_types_var_11128648322172781937[4] = { &__type_info__21586ce84f433a21, &__type_info__4dee28f2a93bbef7, &__type_info__a3a6bcfebaf8fcd8, &__type_info__af81fe4c86352052 };
const char * __type_info__49fa2e6b9b70b307_arg_names_var_11128648322172781937[4] = { "self", "blk", "arg", "lastArg" };
VarInfo __struct_info__9a70e6afd95b0571_field_39 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__4d5fdda373bcfbd1, nullptr, (TypeInfo **)__type_info__49fa2e6b9b70b307_arg_types_var_11128648322172781937, __type_info__49fa2e6b9b70b307_arg_names_var_11128648322172781937, 4, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((smart_ptr_raw<Variable>,ast::AstVisitor,smart_ptr_raw<ExprBlock> const ,smart_ptr_raw<Variable> const ,bool))>::size, UINT64_C(0x49fa2e6b9b70b307), "visitExprBlockArgument", offsetof(soa::CollectAndReplaceIteratorFields,visitExprBlockArgument), 0 };
TypeInfo * __type_info__12dc8ce7e8dfa9e7_arg_types_var_11128648322172781937[4] = { &__type_info__21586ce84f433a21, &__type_info__4dee28f2a93bbef7, &__type_info__a3a6bcfebaf8fcd8, &__type_info__98064c57b4bcca5a };
const char * __type_info__12dc8ce7e8dfa9e7_arg_names_var_11128648322172781937[4] = { "self", "blk", "arg", "expr" };
VarInfo __struct_info__9a70e6afd95b0571_field_40 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__af63eb4c86020609, nullptr, (TypeInfo **)__type_info__12dc8ce7e8dfa9e7_arg_types_var_11128648322172781937, __type_info__12dc8ce7e8dfa9e7_arg_names_var_11128648322172781937, 4, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<ExprBlock> const ,smart_ptr_raw<Variable> const ,smart_ptr_raw<Expression> const ))>::size, UINT64_C(0x12dc8ce7e8dfa9e7), "preVisitExprBlockArgumentInit", offsetof(soa::CollectAndReplaceIteratorFields,preVisitExprBlockArgumentInit), 0 };
TypeInfo * __type_info__8b5b9c4e21fa83ad_arg_types_var_11128648322172781937[4] = { &__type_info__21586ce84f433a21, &__type_info__4dee28f2a93bbef7, &__type_info__a3a6bcfebaf8fcd8, &__type_info__98064c57b4bcca5a };
const char * __type_info__8b5b9c4e21fa83ad_arg_names_var_11128648322172781937[4] = { "self", "blk", "arg", "expr" };
VarInfo __struct_info__9a70e6afd95b0571_field_41 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__6636442e03391ebf, nullptr, (TypeInfo **)__type_info__8b5b9c4e21fa83ad_arg_types_var_11128648322172781937, __type_info__8b5b9c4e21fa83ad_arg_names_var_11128648322172781937, 4, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((smart_ptr_raw<Expression>,ast::AstVisitor,smart_ptr_raw<ExprBlock> const ,smart_ptr_raw<Variable> const ,smart_ptr_raw<Expression> const ))>::size, UINT64_C(0x8b5b9c4e21fa83ad), "visitExprBlockArgumentInit", offsetof(soa::CollectAndReplaceIteratorFields,visitExprBlockArgumentInit), 0 };
TypeInfo * __type_info__72a9aeddddd27944_arg_types_var_11128648322172781937[3] = { &__type_info__21586ce84f433a21, &__type_info__4dee28f2a93bbef7, &__type_info__98064c57b4bcca5a };
const char * __type_info__72a9aeddddd27944_arg_names_var_11128648322172781937[3] = { "self", "blk", "expr" };
VarInfo __struct_info__9a70e6afd95b0571_field_42 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__af63eb4c86020609, nullptr, (TypeInfo **)__type_info__72a9aeddddd27944_arg_types_var_11128648322172781937, __type_info__72a9aeddddd27944_arg_names_var_11128648322172781937, 3, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<ExprBlock> const ,smart_ptr_raw<Expression> const ))>::size, UINT64_C(0x72a9aeddddd27944), "preVisitExprBlockExpression", offsetof(soa::CollectAndReplaceIteratorFields,preVisitExprBlockExpression), 0 };
TypeInfo * __type_info__f375c7ef67e58e6d_arg_types_var_11128648322172781937[3] = { &__type_info__21586ce84f433a21, &__type_info__4dee28f2a93bbef7, &__type_info__98064c57b4bcca5a };
const char * __type_info__f375c7ef67e58e6d_arg_names_var_11128648322172781937[3] = { "self", "blk", "expr" };
VarInfo __struct_info__9a70e6afd95b0571_field_43 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__6636442e03391ebf, nullptr, (TypeInfo **)__type_info__f375c7ef67e58e6d_arg_types_var_11128648322172781937, __type_info__f375c7ef67e58e6d_arg_names_var_11128648322172781937, 3, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((smart_ptr_raw<Expression>,ast::AstVisitor,smart_ptr_raw<ExprBlock> const ,smart_ptr_raw<Expression> const ))>::size, UINT64_C(0xf375c7ef67e58e6d), "visitExprBlockExpression", offsetof(soa::CollectAndReplaceIteratorFields,visitExprBlockExpression), 0 };
TypeInfo * __type_info__32b8daea535d33ca_arg_types_var_11128648322172781937[2] = { &__type_info__21586ce84f433a21, &__type_info__4dee28f2a93bbef7 };
const char * __type_info__32b8daea535d33ca_arg_names_var_11128648322172781937[2] = { "self", "blk" };
VarInfo __struct_info__9a70e6afd95b0571_field_44 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__af63eb4c86020609, nullptr, (TypeInfo **)__type_info__32b8daea535d33ca_arg_types_var_11128648322172781937, __type_info__32b8daea535d33ca_arg_names_var_11128648322172781937, 2, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<ExprBlock> const ))>::size, UINT64_C(0x32b8daea535d33ca), "preVisitExprBlockFinal", offsetof(soa::CollectAndReplaceIteratorFields,preVisitExprBlockFinal), 0 };
TypeInfo * __type_info__287a0715f78917e9_arg_types_var_11128648322172781937[2] = { &__type_info__21586ce84f433a21, &__type_info__4dee28f2a93bbef7 };
const char * __type_info__287a0715f78917e9_arg_names_var_11128648322172781937[2] = { "self", "blk" };
VarInfo __struct_info__9a70e6afd95b0571_field_45 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__af63eb4c86020609, nullptr, (TypeInfo **)__type_info__287a0715f78917e9_arg_types_var_11128648322172781937, __type_info__287a0715f78917e9_arg_names_var_11128648322172781937, 2, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<ExprBlock> const ))>::size, UINT64_C(0x287a0715f78917e9), "visitExprBlockFinal", offsetof(soa::CollectAndReplaceIteratorFields,visitExprBlockFinal), 0 };
TypeInfo * __type_info__a495b0d20dba966_arg_types_var_11128648322172781937[3] = { &__type_info__21586ce84f433a21, &__type_info__4dee28f2a93bbef7, &__type_info__98064c57b4bcca5a };
const char * __type_info__a495b0d20dba966_arg_names_var_11128648322172781937[3] = { "self", "blk", "expr" };
VarInfo __struct_info__9a70e6afd95b0571_field_46 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__af63eb4c86020609, nullptr, (TypeInfo **)__type_info__a495b0d20dba966_arg_types_var_11128648322172781937, __type_info__a495b0d20dba966_arg_names_var_11128648322172781937, 3, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<ExprBlock> const ,smart_ptr_raw<Expression> const ))>::size, UINT64_C(0xa495b0d20dba966), "preVisitExprBlockFinalExpression", offsetof(soa::CollectAndReplaceIteratorFields,preVisitExprBlockFinalExpression), 0 };
TypeInfo * __type_info__d80d7414aa67f315_arg_types_var_11128648322172781937[3] = { &__type_info__21586ce84f433a21, &__type_info__4dee28f2a93bbef7, &__type_info__98064c57b4bcca5a };
const char * __type_info__d80d7414aa67f315_arg_names_var_11128648322172781937[3] = { "self", "blk", "expr" };
VarInfo __struct_info__9a70e6afd95b0571_field_47 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__6636442e03391ebf, nullptr, (TypeInfo **)__type_info__d80d7414aa67f315_arg_types_var_11128648322172781937, __type_info__d80d7414aa67f315_arg_names_var_11128648322172781937, 3, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((smart_ptr_raw<Expression>,ast::AstVisitor,smart_ptr_raw<ExprBlock> const ,smart_ptr_raw<Expression> const ))>::size, UINT64_C(0xd80d7414aa67f315), "visitExprBlockFinalExpression", offsetof(soa::CollectAndReplaceIteratorFields,visitExprBlockFinalExpression), 0 };
TypeInfo * __type_info__eb56f390c4757c1e_arg_types_var_11128648322172781937[2] = { &__type_info__21586ce84f433a21, &__type_info__349161eed600549f };
const char * __type_info__eb56f390c4757c1e_arg_names_var_11128648322172781937[2] = { "self", "expr" };
VarInfo __struct_info__9a70e6afd95b0571_field_48 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__af63eb4c86020609, nullptr, (TypeInfo **)__type_info__eb56f390c4757c1e_arg_types_var_11128648322172781937, __type_info__eb56f390c4757c1e_arg_names_var_11128648322172781937, 2, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<ExprLet> const ))>::size, UINT64_C(0xeb56f390c4757c1e), "preVisitExprLet", offsetof(soa::CollectAndReplaceIteratorFields,preVisitExprLet), 0 };
TypeInfo * __type_info__9cf720f5ca17d72d_arg_types_var_11128648322172781937[2] = { &__type_info__21586ce84f433a21, &__type_info__349161eed600549f };
const char * __type_info__9cf720f5ca17d72d_arg_names_var_11128648322172781937[2] = { "self", "expr" };
VarInfo __struct_info__9a70e6afd95b0571_field_49 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__6636442e03391ebf, nullptr, (TypeInfo **)__type_info__9cf720f5ca17d72d_arg_types_var_11128648322172781937, __type_info__9cf720f5ca17d72d_arg_names_var_11128648322172781937, 2, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((smart_ptr_raw<Expression>,ast::AstVisitor,smart_ptr_raw<ExprLet> const ))>::size, UINT64_C(0x9cf720f5ca17d72d), "visitExprLet", offsetof(soa::CollectAndReplaceIteratorFields,visitExprLet), 0 };
TypeInfo * __type_info__a374731f53db39d3_arg_types_var_11128648322172781937[4] = { &__type_info__21586ce84f433a21, &__type_info__349161eed600549f, &__type_info__a3a6bcfebaf8fcd8, &__type_info__af81fe4c86352052 };
const char * __type_info__a374731f53db39d3_arg_names_var_11128648322172781937[4] = { "self", "expr", "arg", "lastArg" };
VarInfo __struct_info__9a70e6afd95b0571_field_50 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__af63eb4c86020609, nullptr, (TypeInfo **)__type_info__a374731f53db39d3_arg_types_var_11128648322172781937, __type_info__a374731f53db39d3_arg_names_var_11128648322172781937, 4, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<ExprLet> const ,smart_ptr_raw<Variable> const ,bool))>::size, UINT64_C(0xa374731f53db39d3), "preVisitExprLetVariable", offsetof(soa::CollectAndReplaceIteratorFields,preVisitExprLetVariable), 0 };
TypeInfo * __type_info__bd4d2ae4499ea19e_arg_types_var_11128648322172781937[4] = { &__type_info__21586ce84f433a21, &__type_info__349161eed600549f, &__type_info__a3a6bcfebaf8fcd8, &__type_info__af81fe4c86352052 };
const char * __type_info__bd4d2ae4499ea19e_arg_names_var_11128648322172781937[4] = { "self", "expr", "arg", "lastArg" };
VarInfo __struct_info__9a70e6afd95b0571_field_51 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__4d5fdda373bcfbd1, nullptr, (TypeInfo **)__type_info__bd4d2ae4499ea19e_arg_types_var_11128648322172781937, __type_info__bd4d2ae4499ea19e_arg_names_var_11128648322172781937, 4, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((smart_ptr_raw<Variable>,ast::AstVisitor,smart_ptr_raw<ExprLet> const ,smart_ptr_raw<Variable> const ,bool))>::size, UINT64_C(0xbd4d2ae4499ea19e), "visitExprLetVariable", offsetof(soa::CollectAndReplaceIteratorFields,visitExprLetVariable), 0 };
TypeInfo * __type_info__c18354169bb7fc25_arg_types_var_11128648322172781937[4] = { &__type_info__21586ce84f433a21, &__type_info__349161eed600549f, &__type_info__a3a6bcfebaf8fcd8, &__type_info__98064c57b4bcca5a };
const char * __type_info__c18354169bb7fc25_arg_names_var_11128648322172781937[4] = { "self", "blk", "arg", "expr" };
VarInfo __struct_info__9a70e6afd95b0571_field_52 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__af63eb4c86020609, nullptr, (TypeInfo **)__type_info__c18354169bb7fc25_arg_types_var_11128648322172781937, __type_info__c18354169bb7fc25_arg_names_var_11128648322172781937, 4, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<ExprLet> const ,smart_ptr_raw<Variable> const ,smart_ptr_raw<Expression> const ))>::size, UINT64_C(0xc18354169bb7fc25), "preVisitExprLetVariableInit", offsetof(soa::CollectAndReplaceIteratorFields,preVisitExprLetVariableInit), 0 };
TypeInfo * __type_info__8cdb542b362e08ac_arg_types_var_11128648322172781937[4] = { &__type_info__21586ce84f433a21, &__type_info__349161eed600549f, &__type_info__a3a6bcfebaf8fcd8, &__type_info__98064c57b4bcca5a };
const char * __type_info__8cdb542b362e08ac_arg_names_var_11128648322172781937[4] = { "self", "blk", "arg", "expr" };
VarInfo __struct_info__9a70e6afd95b0571_field_53 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__6636442e03391ebf, nullptr, (TypeInfo **)__type_info__8cdb542b362e08ac_arg_types_var_11128648322172781937, __type_info__8cdb542b362e08ac_arg_names_var_11128648322172781937, 4, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((smart_ptr_raw<Expression>,ast::AstVisitor,smart_ptr_raw<ExprLet> const ,smart_ptr_raw<Variable> const ,smart_ptr_raw<Expression> const ))>::size, UINT64_C(0x8cdb542b362e08ac), "visitExprLetVariableInit", offsetof(soa::CollectAndReplaceIteratorFields,visitExprLetVariableInit), 0 };
TypeInfo * __type_info__2eae795a7a746ebf_arg_types_var_11128648322172781937[2] = { &__type_info__21586ce84f433a21, &__type_info__79c6e4b278757551 };
const char * __type_info__2eae795a7a746ebf_arg_names_var_11128648322172781937[2] = { "self", "arg" };
VarInfo __struct_info__9a70e6afd95b0571_field_54 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__af63df4c8601f1a5, nullptr, (TypeInfo **)__type_info__2eae795a7a746ebf_arg_types_var_11128648322172781937, __type_info__2eae795a7a746ebf_arg_names_var_11128648322172781937, 2, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((bool,ast::AstVisitor,Variable * const ))>::size, UINT64_C(0x2eae795a7a746ebf), "canVisitGlobalVariable", offsetof(soa::CollectAndReplaceIteratorFields,canVisitGlobalVariable), 0 };
TypeInfo * __type_info__d6519e654cbd73c0_arg_types_var_11128648322172781937[2] = { &__type_info__21586ce84f433a21, &__type_info__e57b0f261f47b890 };
const char * __type_info__d6519e654cbd73c0_arg_names_var_11128648322172781937[2] = { "self", "prog" };
VarInfo __struct_info__9a70e6afd95b0571_field_55 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__af63eb4c86020609, nullptr, (TypeInfo **)__type_info__d6519e654cbd73c0_arg_types_var_11128648322172781937, __type_info__d6519e654cbd73c0_arg_names_var_11128648322172781937, 2, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<Program> const ))>::size, UINT64_C(0xd6519e654cbd73c0), "preVisitGlobalLet", offsetof(soa::CollectAndReplaceIteratorFields,preVisitGlobalLet), 0 };
TypeInfo * __type_info__4d9ea78c4eb0aefd_arg_types_var_11128648322172781937[2] = { &__type_info__21586ce84f433a21, &__type_info__e57b0f261f47b890 };
const char * __type_info__4d9ea78c4eb0aefd_arg_names_var_11128648322172781937[2] = { "self", "prog" };
VarInfo __struct_info__9a70e6afd95b0571_field_56 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__af63eb4c86020609, nullptr, (TypeInfo **)__type_info__4d9ea78c4eb0aefd_arg_types_var_11128648322172781937, __type_info__4d9ea78c4eb0aefd_arg_names_var_11128648322172781937, 2, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<Program> const ))>::size, UINT64_C(0x4d9ea78c4eb0aefd), "visitGlobalLet", offsetof(soa::CollectAndReplaceIteratorFields,visitGlobalLet), 0 };
TypeInfo * __type_info__3059cdcfc155a73d_arg_types_var_11128648322172781937[3] = { &__type_info__21586ce84f433a21, &__type_info__a3a6bcfebaf8fcd8, &__type_info__af81fe4c86352052 };
const char * __type_info__3059cdcfc155a73d_arg_names_var_11128648322172781937[3] = { "self", "arg", "lastArg" };
VarInfo __struct_info__9a70e6afd95b0571_field_57 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__af63eb4c86020609, nullptr, (TypeInfo **)__type_info__3059cdcfc155a73d_arg_types_var_11128648322172781937, __type_info__3059cdcfc155a73d_arg_names_var_11128648322172781937, 3, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<Variable> const ,bool))>::size, UINT64_C(0x3059cdcfc155a73d), "preVisitGlobalLetVariable", offsetof(soa::CollectAndReplaceIteratorFields,preVisitGlobalLetVariable), 0 };
TypeInfo * __type_info__7857bee503ecbe2e_arg_types_var_11128648322172781937[3] = { &__type_info__21586ce84f433a21, &__type_info__a3a6bcfebaf8fcd8, &__type_info__af81fe4c86352052 };
const char * __type_info__7857bee503ecbe2e_arg_names_var_11128648322172781937[3] = { "self", "arg", "lastArg" };
VarInfo __struct_info__9a70e6afd95b0571_field_58 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__4d5fdda373bcfbd1, nullptr, (TypeInfo **)__type_info__7857bee503ecbe2e_arg_types_var_11128648322172781937, __type_info__7857bee503ecbe2e_arg_names_var_11128648322172781937, 3, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((smart_ptr_raw<Variable>,ast::AstVisitor,smart_ptr_raw<Variable> const ,bool))>::size, UINT64_C(0x7857bee503ecbe2e), "visitGlobalLetVariable", offsetof(soa::CollectAndReplaceIteratorFields,visitGlobalLetVariable), 0 };
TypeInfo * __type_info__85f542609afcf2cf_arg_types_var_11128648322172781937[3] = { &__type_info__21586ce84f433a21, &__type_info__a3a6bcfebaf8fcd8, &__type_info__98064c57b4bcca5a };
const char * __type_info__85f542609afcf2cf_arg_names_var_11128648322172781937[3] = { "self", "arg", "expr" };
VarInfo __struct_info__9a70e6afd95b0571_field_59 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__af63eb4c86020609, nullptr, (TypeInfo **)__type_info__85f542609afcf2cf_arg_types_var_11128648322172781937, __type_info__85f542609afcf2cf_arg_names_var_11128648322172781937, 3, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<Variable> const ,smart_ptr_raw<Expression> const ))>::size, UINT64_C(0x85f542609afcf2cf), "preVisitGlobalLetVariableInit", offsetof(soa::CollectAndReplaceIteratorFields,preVisitGlobalLetVariableInit), 0 };
TypeInfo * __type_info__e9672267bb5a55dc_arg_types_var_11128648322172781937[3] = { &__type_info__21586ce84f433a21, &__type_info__a3a6bcfebaf8fcd8, &__type_info__98064c57b4bcca5a };
const char * __type_info__e9672267bb5a55dc_arg_names_var_11128648322172781937[3] = { "self", "arg", "expr" };
VarInfo __struct_info__9a70e6afd95b0571_field_60 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__6636442e03391ebf, nullptr, (TypeInfo **)__type_info__e9672267bb5a55dc_arg_types_var_11128648322172781937, __type_info__e9672267bb5a55dc_arg_names_var_11128648322172781937, 3, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((smart_ptr_raw<Expression>,ast::AstVisitor,smart_ptr_raw<Variable> const ,smart_ptr_raw<Expression> const ))>::size, UINT64_C(0xe9672267bb5a55dc), "visitGlobalLetVariableInit", offsetof(soa::CollectAndReplaceIteratorFields,visitGlobalLetVariableInit), 0 };
TypeInfo * __type_info__d878398b6c16b20b_arg_types_var_11128648322172781937[2] = { &__type_info__21586ce84f433a21, &__type_info__4e7dff8bb14f539 };
const char * __type_info__d878398b6c16b20b_arg_names_var_11128648322172781937[2] = { "self", "expr" };
VarInfo __struct_info__9a70e6afd95b0571_field_61 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__af63eb4c86020609, nullptr, (TypeInfo **)__type_info__d878398b6c16b20b_arg_types_var_11128648322172781937, __type_info__d878398b6c16b20b_arg_names_var_11128648322172781937, 2, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<ExprStringBuilder> const ))>::size, UINT64_C(0xd878398b6c16b20b), "preVisitExprStringBuilder", offsetof(soa::CollectAndReplaceIteratorFields,preVisitExprStringBuilder), 0 };
TypeInfo * __type_info__3e80de048c511a25_arg_types_var_11128648322172781937[2] = { &__type_info__21586ce84f433a21, &__type_info__4e7dff8bb14f539 };
const char * __type_info__3e80de048c511a25_arg_names_var_11128648322172781937[2] = { "self", "expr" };
VarInfo __struct_info__9a70e6afd95b0571_field_62 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__6636442e03391ebf, nullptr, (TypeInfo **)__type_info__3e80de048c511a25_arg_types_var_11128648322172781937, __type_info__3e80de048c511a25_arg_names_var_11128648322172781937, 2, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((smart_ptr_raw<Expression>,ast::AstVisitor,smart_ptr_raw<ExprStringBuilder> const ))>::size, UINT64_C(0x3e80de048c511a25), "visitExprStringBuilder", offsetof(soa::CollectAndReplaceIteratorFields,visitExprStringBuilder), 0 };
TypeInfo * __type_info__589ce29d23901314_arg_types_var_11128648322172781937[4] = { &__type_info__21586ce84f433a21, &__type_info__4e7dff8bb14f539, &__type_info__98064c57b4bcca5a, &__type_info__af81fe4c86352052 };
const char * __type_info__589ce29d23901314_arg_names_var_11128648322172781937[4] = { "self", "expr", "elem", "last" };
VarInfo __struct_info__9a70e6afd95b0571_field_63 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__af63eb4c86020609, nullptr, (TypeInfo **)__type_info__589ce29d23901314_arg_types_var_11128648322172781937, __type_info__589ce29d23901314_arg_names_var_11128648322172781937, 4, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<ExprStringBuilder> const ,smart_ptr_raw<Expression> const ,bool))>::size, UINT64_C(0x589ce29d23901314), "preVisitExprStringBuilderElement", offsetof(soa::CollectAndReplaceIteratorFields,preVisitExprStringBuilderElement), 0 };
TypeInfo * __type_info__c7a92f873c085df4_arg_types_var_11128648322172781937[4] = { &__type_info__21586ce84f433a21, &__type_info__4e7dff8bb14f539, &__type_info__98064c57b4bcca5a, &__type_info__af81fe4c86352052 };
const char * __type_info__c7a92f873c085df4_arg_names_var_11128648322172781937[4] = { "self", "expr", "elem", "last" };
VarInfo __struct_info__9a70e6afd95b0571_field_64 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__6636442e03391ebf, nullptr, (TypeInfo **)__type_info__c7a92f873c085df4_arg_types_var_11128648322172781937, __type_info__c7a92f873c085df4_arg_names_var_11128648322172781937, 4, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((smart_ptr_raw<Expression>,ast::AstVisitor,smart_ptr_raw<ExprStringBuilder> const ,smart_ptr_raw<Expression> const ,bool))>::size, UINT64_C(0xc7a92f873c085df4), "visitExprStringBuilderElement", offsetof(soa::CollectAndReplaceIteratorFields,visitExprStringBuilderElement), 0 };
TypeInfo * __type_info__e549f390bff3b71e_arg_types_var_11128648322172781937[2] = { &__type_info__21586ce84f433a21, &__type_info__5d6138f13e1e88c4 };
const char * __type_info__e549f390bff3b71e_arg_names_var_11128648322172781937[2] = { "self", "expr" };
VarInfo __struct_info__9a70e6afd95b0571_field_65 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__af63eb4c86020609, nullptr, (TypeInfo **)__type_info__e549f390bff3b71e_arg_types_var_11128648322172781937, __type_info__e549f390bff3b71e_arg_names_var_11128648322172781937, 2, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<ExprNew> const ))>::size, UINT64_C(0xe549f390bff3b71e), "preVisitExprNew", offsetof(soa::CollectAndReplaceIteratorFields,preVisitExprNew), 0 };
TypeInfo * __type_info__9cfe0df5ca1dd592_arg_types_var_11128648322172781937[2] = { &__type_info__21586ce84f433a21, &__type_info__5d6138f13e1e88c4 };
const char * __type_info__9cfe0df5ca1dd592_arg_names_var_11128648322172781937[2] = { "self", "expr" };
VarInfo __struct_info__9a70e6afd95b0571_field_66 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__6636442e03391ebf, nullptr, (TypeInfo **)__type_info__9cfe0df5ca1dd592_arg_types_var_11128648322172781937, __type_info__9cfe0df5ca1dd592_arg_names_var_11128648322172781937, 2, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((smart_ptr_raw<Expression>,ast::AstVisitor,smart_ptr_raw<ExprNew> const ))>::size, UINT64_C(0x9cfe0df5ca1dd592), "visitExprNew", offsetof(soa::CollectAndReplaceIteratorFields,visitExprNew), 0 };
TypeInfo * __type_info__1ca38c3ff38d64c5_arg_types_var_11128648322172781937[4] = { &__type_info__21586ce84f433a21, &__type_info__5d6138f13e1e88c4, &__type_info__98064c57b4bcca5a, &__type_info__af81fe4c86352052 };
const char * __type_info__1ca38c3ff38d64c5_arg_names_var_11128648322172781937[4] = { "self", "expr", "arg", "last" };
VarInfo __struct_info__9a70e6afd95b0571_field_67 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__af63eb4c86020609, nullptr, (TypeInfo **)__type_info__1ca38c3ff38d64c5_arg_types_var_11128648322172781937, __type_info__1ca38c3ff38d64c5_arg_names_var_11128648322172781937, 4, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<ExprNew> const ,smart_ptr_raw<Expression> const ,bool))>::size, UINT64_C(0x1ca38c3ff38d64c5), "preVisitExprNewArgument", offsetof(soa::CollectAndReplaceIteratorFields,preVisitExprNewArgument), 0 };
TypeInfo * __type_info__b1cca641feb61bfe_arg_types_var_11128648322172781937[4] = { &__type_info__21586ce84f433a21, &__type_info__5d6138f13e1e88c4, &__type_info__98064c57b4bcca5a, &__type_info__af81fe4c86352052 };
const char * __type_info__b1cca641feb61bfe_arg_names_var_11128648322172781937[4] = { "self", "expr", "arg", "last" };
VarInfo __struct_info__9a70e6afd95b0571_field_68 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__6636442e03391ebf, nullptr, (TypeInfo **)__type_info__b1cca641feb61bfe_arg_types_var_11128648322172781937, __type_info__b1cca641feb61bfe_arg_names_var_11128648322172781937, 4, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((smart_ptr_raw<Expression>,ast::AstVisitor,smart_ptr_raw<ExprNew> const ,smart_ptr_raw<Expression> const ,bool))>::size, UINT64_C(0xb1cca641feb61bfe), "visitExprNewArgument", offsetof(soa::CollectAndReplaceIteratorFields,visitExprNewArgument), 0 };
TypeInfo * __type_info__803d46f0c4b3f542_arg_types_var_11128648322172781937[2] = { &__type_info__21586ce84f433a21, &__type_info__44cd26f4cb3df7e1 };
const char * __type_info__803d46f0c4b3f542_arg_names_var_11128648322172781937[2] = { "self", "expr" };
VarInfo __struct_info__9a70e6afd95b0571_field_69 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__af63eb4c86020609, nullptr, (TypeInfo **)__type_info__803d46f0c4b3f542_arg_types_var_11128648322172781937, __type_info__803d46f0c4b3f542_arg_names_var_11128648322172781937, 2, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<ExprNamedCall> const ))>::size, UINT64_C(0x803d46f0c4b3f542), "preVisitExprNamedCall", offsetof(soa::CollectAndReplaceIteratorFields,preVisitExprNamedCall), 0 };
TypeInfo * __type_info__4329e27e97d37b3d_arg_types_var_11128648322172781937[2] = { &__type_info__21586ce84f433a21, &__type_info__44cd26f4cb3df7e1 };
const char * __type_info__4329e27e97d37b3d_arg_names_var_11128648322172781937[2] = { "self", "expr" };
VarInfo __struct_info__9a70e6afd95b0571_field_70 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__6636442e03391ebf, nullptr, (TypeInfo **)__type_info__4329e27e97d37b3d_arg_types_var_11128648322172781937, __type_info__4329e27e97d37b3d_arg_names_var_11128648322172781937, 2, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((smart_ptr_raw<Expression>,ast::AstVisitor,smart_ptr_raw<ExprNamedCall> const ))>::size, UINT64_C(0x4329e27e97d37b3d), "visitExprNamedCall", offsetof(soa::CollectAndReplaceIteratorFields,visitExprNamedCall), 0 };
TypeInfo * __type_info__c4c9fd044dc6d2a1_arg_types_var_11128648322172781937[4] = { &__type_info__21586ce84f433a21, &__type_info__44cd26f4cb3df7e1, &__type_info__9a5e492166d49949, &__type_info__af81fe4c86352052 };
const char * __type_info__c4c9fd044dc6d2a1_arg_names_var_11128648322172781937[4] = { "self", "expr", "arg", "last" };
VarInfo __struct_info__9a70e6afd95b0571_field_71 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__af63eb4c86020609, nullptr, (TypeInfo **)__type_info__c4c9fd044dc6d2a1_arg_types_var_11128648322172781937, __type_info__c4c9fd044dc6d2a1_arg_names_var_11128648322172781937, 4, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<ExprNamedCall> const ,smart_ptr_raw<MakeFieldDecl> const ,bool))>::size, UINT64_C(0xc4c9fd044dc6d2a1), "preVisitExprNamedCallArgument", offsetof(soa::CollectAndReplaceIteratorFields,preVisitExprNamedCallArgument), 0 };
TypeInfo * __type_info__a0382d3adcb1e589_arg_types_var_11128648322172781937[4] = { &__type_info__21586ce84f433a21, &__type_info__44cd26f4cb3df7e1, &__type_info__9a5e492166d49949, &__type_info__af81fe4c86352052 };
const char * __type_info__a0382d3adcb1e589_arg_names_var_11128648322172781937[4] = { "self", "expr", "arg", "last" };
VarInfo __struct_info__9a70e6afd95b0571_field_72 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__c52835f1e7c9ab84, nullptr, (TypeInfo **)__type_info__a0382d3adcb1e589_arg_types_var_11128648322172781937, __type_info__a0382d3adcb1e589_arg_names_var_11128648322172781937, 4, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((smart_ptr_raw<MakeFieldDecl>,ast::AstVisitor,smart_ptr_raw<ExprNamedCall> const ,smart_ptr_raw<MakeFieldDecl> const ,bool))>::size, UINT64_C(0xa0382d3adcb1e589), "visitExprNamedCallArgument", offsetof(soa::CollectAndReplaceIteratorFields,visitExprNamedCallArgument), 0 };
TypeInfo * __type_info__86930a1a307091eb_arg_types_var_11128648322172781937[2] = { &__type_info__21586ce84f433a21, &__type_info__8faf3ae8c5ebe47a };
const char * __type_info__86930a1a307091eb_arg_names_var_11128648322172781937[2] = { "self", "expr" };
VarInfo __struct_info__9a70e6afd95b0571_field_73 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__af63eb4c86020609, nullptr, (TypeInfo **)__type_info__86930a1a307091eb_arg_types_var_11128648322172781937, __type_info__86930a1a307091eb_arg_names_var_11128648322172781937, 2, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<ExprLooksLikeCall> const ))>::size, UINT64_C(0x86930a1a307091eb), "preVisitExprLooksLikeCall", offsetof(soa::CollectAndReplaceIteratorFields,preVisitExprLooksLikeCall), 0 };
TypeInfo * __type_info__f3d573ed5c962676_arg_types_var_11128648322172781937[2] = { &__type_info__21586ce84f433a21, &__type_info__8faf3ae8c5ebe47a };
const char * __type_info__f3d573ed5c962676_arg_names_var_11128648322172781937[2] = { "self", "expr" };
VarInfo __struct_info__9a70e6afd95b0571_field_74 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__6636442e03391ebf, nullptr, (TypeInfo **)__type_info__f3d573ed5c962676_arg_types_var_11128648322172781937, __type_info__f3d573ed5c962676_arg_names_var_11128648322172781937, 2, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((smart_ptr_raw<Expression>,ast::AstVisitor,smart_ptr_raw<ExprLooksLikeCall> const ))>::size, UINT64_C(0xf3d573ed5c962676), "visitExprLooksLikeCall", offsetof(soa::CollectAndReplaceIteratorFields,visitExprLooksLikeCall), 0 };
TypeInfo * __type_info__f932b717d4c7396f_arg_types_var_11128648322172781937[4] = { &__type_info__21586ce84f433a21, &__type_info__8faf3ae8c5ebe47a, &__type_info__98064c57b4bcca5a, &__type_info__af81fe4c86352052 };
const char * __type_info__f932b717d4c7396f_arg_names_var_11128648322172781937[4] = { "self", "expr", "arg", "last" };
VarInfo __struct_info__9a70e6afd95b0571_field_75 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__af63df4c8601f1a5, nullptr, (TypeInfo **)__type_info__f932b717d4c7396f_arg_types_var_11128648322172781937, __type_info__f932b717d4c7396f_arg_names_var_11128648322172781937, 4, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((bool,ast::AstVisitor,smart_ptr_raw<ExprLooksLikeCall> const ,smart_ptr_raw<Expression> const ,bool))>::size, UINT64_C(0xf932b717d4c7396f), "canVisitExprLooksLikeCallArgument", offsetof(soa::CollectAndReplaceIteratorFields,canVisitExprLooksLikeCallArgument), 0 };
TypeInfo * __type_info__2e5a1b3f9d87c44_arg_types_var_11128648322172781937[4] = { &__type_info__21586ce84f433a21, &__type_info__8faf3ae8c5ebe47a, &__type_info__98064c57b4bcca5a, &__type_info__af81fe4c86352052 };
const char * __type_info__2e5a1b3f9d87c44_arg_names_var_11128648322172781937[4] = { "self", "expr", "arg", "last" };
VarInfo __struct_info__9a70e6afd95b0571_field_76 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__af63eb4c86020609, nullptr, (TypeInfo **)__type_info__2e5a1b3f9d87c44_arg_types_var_11128648322172781937, __type_info__2e5a1b3f9d87c44_arg_names_var_11128648322172781937, 4, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<ExprLooksLikeCall> const ,smart_ptr_raw<Expression> const ,bool))>::size, UINT64_C(0x2e5a1b3f9d87c44), "preVisitExprLooksLikeCallArgument", offsetof(soa::CollectAndReplaceIteratorFields,preVisitExprLooksLikeCallArgument), 0 };
TypeInfo * __type_info__e574af1cf106902a_arg_types_var_11128648322172781937[4] = { &__type_info__21586ce84f433a21, &__type_info__8faf3ae8c5ebe47a, &__type_info__98064c57b4bcca5a, &__type_info__af81fe4c86352052 };
const char * __type_info__e574af1cf106902a_arg_names_var_11128648322172781937[4] = { "self", "expr", "arg", "last" };
VarInfo __struct_info__9a70e6afd95b0571_field_77 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__6636442e03391ebf, nullptr, (TypeInfo **)__type_info__e574af1cf106902a_arg_types_var_11128648322172781937, __type_info__e574af1cf106902a_arg_names_var_11128648322172781937, 4, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((smart_ptr_raw<Expression>,ast::AstVisitor,smart_ptr_raw<ExprLooksLikeCall> const ,smart_ptr_raw<Expression> const ,bool))>::size, UINT64_C(0xe574af1cf106902a), "visitExprLooksLikeCallArgument", offsetof(soa::CollectAndReplaceIteratorFields,visitExprLooksLikeCallArgument), 0 };
TypeInfo * __type_info__ce0b180e77df9497_arg_types_var_11128648322172781937[2] = { &__type_info__21586ce84f433a21, &__type_info__7e04c1d12891d606 };
const char * __type_info__ce0b180e77df9497_arg_names_var_11128648322172781937[2] = { "self", "expr" };
VarInfo __struct_info__9a70e6afd95b0571_field_78 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__af63df4c8601f1a5, nullptr, (TypeInfo **)__type_info__ce0b180e77df9497_arg_types_var_11128648322172781937, __type_info__ce0b180e77df9497_arg_names_var_11128648322172781937, 2, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((bool,ast::AstVisitor,ExprCall * const ))>::size, UINT64_C(0xce0b180e77df9497), "canVisitCall", offsetof(soa::CollectAndReplaceIteratorFields,canVisitCall), 0 };
TypeInfo * __type_info__c80a310e9eee42b2_arg_types_var_11128648322172781937[2] = { &__type_info__21586ce84f433a21, &__type_info__7dd1c1d1283b2d06 };
const char * __type_info__c80a310e9eee42b2_arg_names_var_11128648322172781937[2] = { "self", "expr" };
VarInfo __struct_info__9a70e6afd95b0571_field_79 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__af63eb4c86020609, nullptr, (TypeInfo **)__type_info__c80a310e9eee42b2_arg_types_var_11128648322172781937, __type_info__c80a310e9eee42b2_arg_names_var_11128648322172781937, 2, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<ExprCall> const ))>::size, UINT64_C(0xc80a310e9eee42b2), "preVisitExprCall", offsetof(soa::CollectAndReplaceIteratorFields,preVisitExprCall), 0 };
TypeInfo * __type_info__aa6126f5d55f04da_arg_types_var_11128648322172781937[2] = { &__type_info__21586ce84f433a21, &__type_info__7dd1c1d1283b2d06 };
const char * __type_info__aa6126f5d55f04da_arg_names_var_11128648322172781937[2] = { "self", "expr" };
VarInfo __struct_info__9a70e6afd95b0571_field_80 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__6636442e03391ebf, nullptr, (TypeInfo **)__type_info__aa6126f5d55f04da_arg_types_var_11128648322172781937, __type_info__aa6126f5d55f04da_arg_names_var_11128648322172781937, 2, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((smart_ptr_raw<Expression>,ast::AstVisitor,smart_ptr_raw<ExprCall> const ))>::size, UINT64_C(0xaa6126f5d55f04da), "visitExprCall", offsetof(soa::CollectAndReplaceIteratorFields,visitExprCall), 0 };
TypeInfo * __type_info__957502d985d0a51e_arg_types_var_11128648322172781937[4] = { &__type_info__21586ce84f433a21, &__type_info__7dd1c1d1283b2d06, &__type_info__98064c57b4bcca5a, &__type_info__af81fe4c86352052 };
const char * __type_info__957502d985d0a51e_arg_names_var_11128648322172781937[4] = { "self", "expr", "arg", "last" };
VarInfo __struct_info__9a70e6afd95b0571_field_81 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__af63eb4c86020609, nullptr, (TypeInfo **)__type_info__957502d985d0a51e_arg_types_var_11128648322172781937, __type_info__957502d985d0a51e_arg_names_var_11128648322172781937, 4, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<ExprCall> const ,smart_ptr_raw<Expression> const ,bool))>::size, UINT64_C(0x957502d985d0a51e), "preVisitExprCallArgument", offsetof(soa::CollectAndReplaceIteratorFields,preVisitExprCallArgument), 0 };
TypeInfo * __type_info__d85d7e96635ac719_arg_types_var_11128648322172781937[4] = { &__type_info__21586ce84f433a21, &__type_info__7dd1c1d1283b2d06, &__type_info__98064c57b4bcca5a, &__type_info__af81fe4c86352052 };
const char * __type_info__d85d7e96635ac719_arg_names_var_11128648322172781937[4] = { "self", "expr", "arg", "last" };
VarInfo __struct_info__9a70e6afd95b0571_field_82 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__6636442e03391ebf, nullptr, (TypeInfo **)__type_info__d85d7e96635ac719_arg_types_var_11128648322172781937, __type_info__d85d7e96635ac719_arg_names_var_11128648322172781937, 4, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((smart_ptr_raw<Expression>,ast::AstVisitor,smart_ptr_raw<ExprCall> const ,smart_ptr_raw<Expression> const ,bool))>::size, UINT64_C(0xd85d7e96635ac719), "visitExprCallArgument", offsetof(soa::CollectAndReplaceIteratorFields,visitExprCallArgument), 0 };
TypeInfo * __type_info__2acca9c5082a58e2_arg_types_var_11128648322172781937[2] = { &__type_info__21586ce84f433a21, &__type_info__e7e2063b91ac55a1 };
const char * __type_info__2acca9c5082a58e2_arg_names_var_11128648322172781937[2] = { "self", "expr" };
VarInfo __struct_info__9a70e6afd95b0571_field_83 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__af63eb4c86020609, nullptr, (TypeInfo **)__type_info__2acca9c5082a58e2_arg_types_var_11128648322172781937, __type_info__2acca9c5082a58e2_arg_names_var_11128648322172781937, 2, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<ExprNullCoalescing> const ))>::size, UINT64_C(0x2acca9c5082a58e2), "preVisitExprNullCoalescing", offsetof(soa::CollectAndReplaceIteratorFields,preVisitExprNullCoalescing), 0 };
TypeInfo * __type_info__c5f8462942c29033_arg_types_var_11128648322172781937[2] = { &__type_info__21586ce84f433a21, &__type_info__e7e2063b91ac55a1 };
const char * __type_info__c5f8462942c29033_arg_names_var_11128648322172781937[2] = { "self", "expr" };
VarInfo __struct_info__9a70e6afd95b0571_field_84 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__6636442e03391ebf, nullptr, (TypeInfo **)__type_info__c5f8462942c29033_arg_types_var_11128648322172781937, __type_info__c5f8462942c29033_arg_names_var_11128648322172781937, 2, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((smart_ptr_raw<Expression>,ast::AstVisitor,smart_ptr_raw<ExprNullCoalescing> const ))>::size, UINT64_C(0xc5f8462942c29033), "visitExprNullCoalescing", offsetof(soa::CollectAndReplaceIteratorFields,visitExprNullCoalescing), 0 };
TypeInfo * __type_info__fe31eadc179983e0_arg_types_var_11128648322172781937[3] = { &__type_info__21586ce84f433a21, &__type_info__e7e2063b91ac55a1, &__type_info__98064c57b4bcca5a };
const char * __type_info__fe31eadc179983e0_arg_names_var_11128648322172781937[3] = { "self", "expr", "defval" };
VarInfo __struct_info__9a70e6afd95b0571_field_85 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__af63eb4c86020609, nullptr, (TypeInfo **)__type_info__fe31eadc179983e0_arg_types_var_11128648322172781937, __type_info__fe31eadc179983e0_arg_names_var_11128648322172781937, 3, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<ExprNullCoalescing> const ,smart_ptr_raw<Expression> const ))>::size, UINT64_C(0xfe31eadc179983e0), "preVisitExprNullCoalescingDefault", offsetof(soa::CollectAndReplaceIteratorFields,preVisitExprNullCoalescingDefault), 0 };
TypeInfo * __type_info__fca90490d3742201_arg_types_var_11128648322172781937[2] = { &__type_info__21586ce84f433a21, &__type_info__241df6ccda394202 };
const char * __type_info__fca90490d3742201_arg_names_var_11128648322172781937[2] = { "self", "expr" };
VarInfo __struct_info__9a70e6afd95b0571_field_86 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__af63eb4c86020609, nullptr, (TypeInfo **)__type_info__fca90490d3742201_arg_types_var_11128648322172781937, __type_info__fca90490d3742201_arg_names_var_11128648322172781937, 2, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<ExprAt> const ))>::size, UINT64_C(0xfca90490d3742201), "preVisitExprAt", offsetof(soa::CollectAndReplaceIteratorFields,preVisitExprAt), 0 };
TypeInfo * __type_info__5de98f0381d60e6c_arg_types_var_11128648322172781937[2] = { &__type_info__21586ce84f433a21, &__type_info__241df6ccda394202 };
const char * __type_info__5de98f0381d60e6c_arg_names_var_11128648322172781937[2] = { "self", "expr" };
VarInfo __struct_info__9a70e6afd95b0571_field_87 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__6636442e03391ebf, nullptr, (TypeInfo **)__type_info__5de98f0381d60e6c_arg_types_var_11128648322172781937, __type_info__5de98f0381d60e6c_arg_names_var_11128648322172781937, 2, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((smart_ptr_raw<Expression>,ast::AstVisitor,smart_ptr_raw<ExprAt> const ))>::size, UINT64_C(0x5de98f0381d60e6c), "visitExprAt", offsetof(soa::CollectAndReplaceIteratorFields,visitExprAt), 0 };
TypeInfo * __type_info__f1126134ff63ac68_arg_types_var_11128648322172781937[3] = { &__type_info__21586ce84f433a21, &__type_info__241df6ccda394202, &__type_info__98064c57b4bcca5a };
const char * __type_info__f1126134ff63ac68_arg_names_var_11128648322172781937[3] = { "self", "expr", "index" };
VarInfo __struct_info__9a70e6afd95b0571_field_88 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__af63eb4c86020609, nullptr, (TypeInfo **)__type_info__f1126134ff63ac68_arg_types_var_11128648322172781937, __type_info__f1126134ff63ac68_arg_names_var_11128648322172781937, 3, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<ExprAt> const ,smart_ptr_raw<Expression> const ))>::size, UINT64_C(0xf1126134ff63ac68), "preVisitExprAtIndex", offsetof(soa::CollectAndReplaceIteratorFields,preVisitExprAtIndex), 0 };
TypeInfo * __type_info__4deab3e33f6d70cb_arg_types_var_11128648322172781937[2] = { &__type_info__21586ce84f433a21, &__type_info__b5e62a55ec68b6b5 };
const char * __type_info__4deab3e33f6d70cb_arg_names_var_11128648322172781937[2] = { "self", "expr" };
VarInfo __struct_info__9a70e6afd95b0571_field_89 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__af63eb4c86020609, nullptr, (TypeInfo **)__type_info__4deab3e33f6d70cb_arg_types_var_11128648322172781937, __type_info__4deab3e33f6d70cb_arg_names_var_11128648322172781937, 2, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<ExprSafeAt> const ))>::size, UINT64_C(0x4deab3e33f6d70cb), "preVisitExprSafeAt", offsetof(soa::CollectAndReplaceIteratorFields,preVisitExprSafeAt), 0 };
TypeInfo * __type_info__97bc82b929aad7f7_arg_types_var_11128648322172781937[2] = { &__type_info__21586ce84f433a21, &__type_info__b5e62a55ec68b6b5 };
const char * __type_info__97bc82b929aad7f7_arg_names_var_11128648322172781937[2] = { "self", "expr" };
VarInfo __struct_info__9a70e6afd95b0571_field_90 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__6636442e03391ebf, nullptr, (TypeInfo **)__type_info__97bc82b929aad7f7_arg_types_var_11128648322172781937, __type_info__97bc82b929aad7f7_arg_names_var_11128648322172781937, 2, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((smart_ptr_raw<Expression>,ast::AstVisitor,smart_ptr_raw<ExprSafeAt> const ))>::size, UINT64_C(0x97bc82b929aad7f7), "visitExprSafeAt", offsetof(soa::CollectAndReplaceIteratorFields,visitExprSafeAt), 0 };
TypeInfo * __type_info__8c0367216b88798e_arg_types_var_11128648322172781937[3] = { &__type_info__21586ce84f433a21, &__type_info__b5e62a55ec68b6b5, &__type_info__98064c57b4bcca5a };
const char * __type_info__8c0367216b88798e_arg_names_var_11128648322172781937[3] = { "self", "expr", "index" };
VarInfo __struct_info__9a70e6afd95b0571_field_91 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__af63eb4c86020609, nullptr, (TypeInfo **)__type_info__8c0367216b88798e_arg_types_var_11128648322172781937, __type_info__8c0367216b88798e_arg_names_var_11128648322172781937, 3, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<ExprSafeAt> const ,smart_ptr_raw<Expression> const ))>::size, UINT64_C(0x8c0367216b88798e), "preVisitExprSafeAtIndex", offsetof(soa::CollectAndReplaceIteratorFields,preVisitExprSafeAtIndex), 0 };
TypeInfo * __type_info__e1790590bc5adbb4_arg_types_var_11128648322172781937[2] = { &__type_info__21586ce84f433a21, &__type_info__8a5e2edb26418a2a };
const char * __type_info__e1790590bc5adbb4_arg_names_var_11128648322172781937[2] = { "self", "expr" };
VarInfo __struct_info__9a70e6afd95b0571_field_92 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__af63eb4c86020609, nullptr, (TypeInfo **)__type_info__e1790590bc5adbb4_arg_types_var_11128648322172781937, __type_info__e1790590bc5adbb4_arg_names_var_11128648322172781937, 2, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<ExprIs> const ))>::size, UINT64_C(0xe1790590bc5adbb4), "preVisitExprIs", offsetof(soa::CollectAndReplaceIteratorFields,preVisitExprIs), 0 };
TypeInfo * __type_info__5dee970381de9b04_arg_types_var_11128648322172781937[2] = { &__type_info__21586ce84f433a21, &__type_info__8a5e2edb26418a2a };
const char * __type_info__5dee970381de9b04_arg_names_var_11128648322172781937[2] = { "self", "expr" };
VarInfo __struct_info__9a70e6afd95b0571_field_93 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__6636442e03391ebf, nullptr, (TypeInfo **)__type_info__5dee970381de9b04_arg_types_var_11128648322172781937, __type_info__5dee970381de9b04_arg_names_var_11128648322172781937, 2, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((smart_ptr_raw<Expression>,ast::AstVisitor,smart_ptr_raw<ExprIs> const ))>::size, UINT64_C(0x5dee970381de9b04), "visitExprIs", offsetof(soa::CollectAndReplaceIteratorFields,visitExprIs), 0 };
TypeInfo * __type_info__24493b73c1a587f6_arg_types_var_11128648322172781937[3] = { &__type_info__21586ce84f433a21, &__type_info__8a5e2edb26418a2a, &__type_info__defb2f7795e0cf8c };
const char * __type_info__24493b73c1a587f6_arg_names_var_11128648322172781937[3] = { "self", "expr", "typeDecl" };
VarInfo __struct_info__9a70e6afd95b0571_field_94 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__af63eb4c86020609, nullptr, (TypeInfo **)__type_info__24493b73c1a587f6_arg_types_var_11128648322172781937, __type_info__24493b73c1a587f6_arg_names_var_11128648322172781937, 3, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<ExprIs> const ,smart_ptr_raw<TypeDecl> const ))>::size, UINT64_C(0x24493b73c1a587f6), "preVisitExprIsType", offsetof(soa::CollectAndReplaceIteratorFields,preVisitExprIsType), 0 };
TypeInfo * __type_info__e8170890c1d308cd_arg_types_var_11128648322172781937[2] = { &__type_info__21586ce84f433a21, &__type_info__c5915ffba474f7fe };
const char * __type_info__e8170890c1d308cd_arg_names_var_11128648322172781937[2] = { "self", "expr" };
VarInfo __struct_info__9a70e6afd95b0571_field_95 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__af63eb4c86020609, nullptr, (TypeInfo **)__type_info__e8170890c1d308cd_arg_types_var_11128648322172781937, __type_info__e8170890c1d308cd_arg_names_var_11128648322172781937, 2, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<ExprOp2> const ))>::size, UINT64_C(0xe8170890c1d308cd), "preVisitExprOp2", offsetof(soa::CollectAndReplaceIteratorFields,preVisitExprOp2), 0 };
TypeInfo * __type_info__7798e0f5aa589044_arg_types_var_11128648322172781937[2] = { &__type_info__21586ce84f433a21, &__type_info__c5915ffba474f7fe };
const char * __type_info__7798e0f5aa589044_arg_names_var_11128648322172781937[2] = { "self", "expr" };
VarInfo __struct_info__9a70e6afd95b0571_field_96 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__6636442e03391ebf, nullptr, (TypeInfo **)__type_info__7798e0f5aa589044_arg_types_var_11128648322172781937, __type_info__7798e0f5aa589044_arg_names_var_11128648322172781937, 2, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((smart_ptr_raw<Expression>,ast::AstVisitor,smart_ptr_raw<ExprOp2> const ))>::size, UINT64_C(0x7798e0f5aa589044), "visitExprOp2", offsetof(soa::CollectAndReplaceIteratorFields,visitExprOp2), 0 };
TypeInfo * __type_info__aeb98b43c7c4af3e_arg_types_var_11128648322172781937[3] = { &__type_info__21586ce84f433a21, &__type_info__c5915ffba474f7fe, &__type_info__98064c57b4bcca5a };
const char * __type_info__aeb98b43c7c4af3e_arg_names_var_11128648322172781937[3] = { "self", "expr", "right" };
VarInfo __struct_info__9a70e6afd95b0571_field_97 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__af63eb4c86020609, nullptr, (TypeInfo **)__type_info__aeb98b43c7c4af3e_arg_types_var_11128648322172781937, __type_info__aeb98b43c7c4af3e_arg_names_var_11128648322172781937, 3, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<ExprOp2> const ,smart_ptr_raw<Expression> const ))>::size, UINT64_C(0xaeb98b43c7c4af3e), "preVisitExprOp2Right", offsetof(soa::CollectAndReplaceIteratorFields,preVisitExprOp2Right), 0 };
TypeInfo * __type_info__e8160890c1d155cd_arg_types_var_11128648322172781937[2] = { &__type_info__21586ce84f433a21, &__type_info__ca2136fbaac99425 };
const char * __type_info__e8160890c1d155cd_arg_names_var_11128648322172781937[2] = { "self", "expr" };
VarInfo __struct_info__9a70e6afd95b0571_field_98 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__af63eb4c86020609, nullptr, (TypeInfo **)__type_info__e8160890c1d155cd_arg_types_var_11128648322172781937, __type_info__e8160890c1d155cd_arg_names_var_11128648322172781937, 2, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<ExprOp3> const ))>::size, UINT64_C(0xe8160890c1d155cd), "preVisitExprOp3", offsetof(soa::CollectAndReplaceIteratorFields,preVisitExprOp3), 0 };
TypeInfo * __type_info__7798e1f5aa5891f7_arg_types_var_11128648322172781937[2] = { &__type_info__21586ce84f433a21, &__type_info__ca2136fbaac99425 };
const char * __type_info__7798e1f5aa5891f7_arg_names_var_11128648322172781937[2] = { "self", "expr" };
VarInfo __struct_info__9a70e6afd95b0571_field_99 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__6636442e03391ebf, nullptr, (TypeInfo **)__type_info__7798e1f5aa5891f7_arg_types_var_11128648322172781937, __type_info__7798e1f5aa5891f7_arg_names_var_11128648322172781937, 2, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((smart_ptr_raw<Expression>,ast::AstVisitor,smart_ptr_raw<ExprOp3> const ))>::size, UINT64_C(0x7798e1f5aa5891f7), "visitExprOp3", offsetof(soa::CollectAndReplaceIteratorFields,visitExprOp3), 0 };
TypeInfo * __type_info__b0cbc6ade9043d6f_arg_types_var_11128648322172781937[3] = { &__type_info__21586ce84f433a21, &__type_info__ca2136fbaac99425, &__type_info__98064c57b4bcca5a };
const char * __type_info__b0cbc6ade9043d6f_arg_names_var_11128648322172781937[3] = { "self", "expr", "left" };
VarInfo __struct_info__9a70e6afd95b0571_field_100 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__af63eb4c86020609, nullptr, (TypeInfo **)__type_info__b0cbc6ade9043d6f_arg_types_var_11128648322172781937, __type_info__b0cbc6ade9043d6f_arg_names_var_11128648322172781937, 3, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<ExprOp3> const ,smart_ptr_raw<Expression> const ))>::size, UINT64_C(0xb0cbc6ade9043d6f), "preVisitExprOp3Left", offsetof(soa::CollectAndReplaceIteratorFields,preVisitExprOp3Left), 0 };
TypeInfo * __type_info__c7c780c06cfeb83e_arg_types_var_11128648322172781937[3] = { &__type_info__21586ce84f433a21, &__type_info__ca2136fbaac99425, &__type_info__98064c57b4bcca5a };
const char * __type_info__c7c780c06cfeb83e_arg_names_var_11128648322172781937[3] = { "self", "expr", "right" };
VarInfo __struct_info__9a70e6afd95b0571_field_101 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__af63eb4c86020609, nullptr, (TypeInfo **)__type_info__c7c780c06cfeb83e_arg_types_var_11128648322172781937, __type_info__c7c780c06cfeb83e_arg_names_var_11128648322172781937, 3, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<ExprOp3> const ,smart_ptr_raw<Expression> const ))>::size, UINT64_C(0xc7c780c06cfeb83e), "preVisitExprOp3Right", offsetof(soa::CollectAndReplaceIteratorFields,preVisitExprOp3Right), 0 };
TypeInfo * __type_info__fa54b8acba97e420_arg_types_var_11128648322172781937[2] = { &__type_info__21586ce84f433a21, &__type_info__350b375c34e0c48a };
const char * __type_info__fa54b8acba97e420_arg_names_var_11128648322172781937[2] = { "self", "expr" };
VarInfo __struct_info__9a70e6afd95b0571_field_102 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__af63df4c8601f1a5, nullptr, (TypeInfo **)__type_info__fa54b8acba97e420_arg_types_var_11128648322172781937, __type_info__fa54b8acba97e420_arg_names_var_11128648322172781937, 2, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((bool,ast::AstVisitor,smart_ptr_raw<ExprCopy> const ))>::size, UINT64_C(0xfa54b8acba97e420), "isRightFirstExprCopy", offsetof(soa::CollectAndReplaceIteratorFields,isRightFirstExprCopy), 0 };
TypeInfo * __type_info__f0a33a0ec16ccd3b_arg_types_var_11128648322172781937[2] = { &__type_info__21586ce84f433a21, &__type_info__350b375c34e0c48a };
const char * __type_info__f0a33a0ec16ccd3b_arg_names_var_11128648322172781937[2] = { "self", "expr" };
VarInfo __struct_info__9a70e6afd95b0571_field_103 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__af63eb4c86020609, nullptr, (TypeInfo **)__type_info__f0a33a0ec16ccd3b_arg_types_var_11128648322172781937, __type_info__f0a33a0ec16ccd3b_arg_names_var_11128648322172781937, 2, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<ExprCopy> const ))>::size, UINT64_C(0xf0a33a0ec16ccd3b), "preVisitExprCopy", offsetof(soa::CollectAndReplaceIteratorFields,preVisitExprCopy), 0 };
TypeInfo * __type_info__88520af5b85ef246_arg_types_var_11128648322172781937[2] = { &__type_info__21586ce84f433a21, &__type_info__350b375c34e0c48a };
const char * __type_info__88520af5b85ef246_arg_names_var_11128648322172781937[2] = { "self", "expr" };
VarInfo __struct_info__9a70e6afd95b0571_field_104 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__6636442e03391ebf, nullptr, (TypeInfo **)__type_info__88520af5b85ef246_arg_types_var_11128648322172781937, __type_info__88520af5b85ef246_arg_names_var_11128648322172781937, 2, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((smart_ptr_raw<Expression>,ast::AstVisitor,smart_ptr_raw<ExprCopy> const ))>::size, UINT64_C(0x88520af5b85ef246), "visitExprCopy", offsetof(soa::CollectAndReplaceIteratorFields,visitExprCopy), 0 };
TypeInfo * __type_info__d5257726964a265a_arg_types_var_11128648322172781937[3] = { &__type_info__21586ce84f433a21, &__type_info__350b375c34e0c48a, &__type_info__98064c57b4bcca5a };
const char * __type_info__d5257726964a265a_arg_names_var_11128648322172781937[3] = { "self", "expr", "right" };
VarInfo __struct_info__9a70e6afd95b0571_field_105 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__af63eb4c86020609, nullptr, (TypeInfo **)__type_info__d5257726964a265a_arg_types_var_11128648322172781937, __type_info__d5257726964a265a_arg_names_var_11128648322172781937, 3, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<ExprCopy> const ,smart_ptr_raw<Expression> const ))>::size, UINT64_C(0xd5257726964a265a), "preVisitExprCopyRight", offsetof(soa::CollectAndReplaceIteratorFields,preVisitExprCopyRight), 0 };
TypeInfo * __type_info__a62ad4c90f9a63b4_arg_types_var_11128648322172781937[2] = { &__type_info__21586ce84f433a21, &__type_info__c19751d6d5da74e2 };
const char * __type_info__a62ad4c90f9a63b4_arg_names_var_11128648322172781937[2] = { "self", "expr" };
VarInfo __struct_info__9a70e6afd95b0571_field_106 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__af63df4c8601f1a5, nullptr, (TypeInfo **)__type_info__a62ad4c90f9a63b4_arg_types_var_11128648322172781937, __type_info__a62ad4c90f9a63b4_arg_names_var_11128648322172781937, 2, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((bool,ast::AstVisitor,smart_ptr_raw<ExprMove> const ))>::size, UINT64_C(0xa62ad4c90f9a63b4), "isRightFirstExprMove", offsetof(soa::CollectAndReplaceIteratorFields,isRightFirstExprMove), 0 };
TypeInfo * __type_info__1c89260483b73f3f_arg_types_var_11128648322172781937[2] = { &__type_info__21586ce84f433a21, &__type_info__c19751d6d5da74e2 };
const char * __type_info__1c89260483b73f3f_arg_names_var_11128648322172781937[2] = { "self", "expr" };
VarInfo __struct_info__9a70e6afd95b0571_field_107 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__af63eb4c86020609, nullptr, (TypeInfo **)__type_info__1c89260483b73f3f_arg_types_var_11128648322172781937, __type_info__1c89260483b73f3f_arg_names_var_11128648322172781937, 2, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<ExprMove> const ))>::size, UINT64_C(0x1c89260483b73f3f), "preVisitExprMove", offsetof(soa::CollectAndReplaceIteratorFields,preVisitExprMove), 0 };
TypeInfo * __type_info__88351cf5b828038a_arg_types_var_11128648322172781937[2] = { &__type_info__21586ce84f433a21, &__type_info__c19751d6d5da74e2 };
const char * __type_info__88351cf5b828038a_arg_names_var_11128648322172781937[2] = { "self", "expr" };
VarInfo __struct_info__9a70e6afd95b0571_field_108 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__6636442e03391ebf, nullptr, (TypeInfo **)__type_info__88351cf5b828038a_arg_types_var_11128648322172781937, __type_info__88351cf5b828038a_arg_names_var_11128648322172781937, 2, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((smart_ptr_raw<Expression>,ast::AstVisitor,smart_ptr_raw<ExprMove> const ))>::size, UINT64_C(0x88351cf5b828038a), "visitExprMove", offsetof(soa::CollectAndReplaceIteratorFields,visitExprMove), 0 };
TypeInfo * __type_info__83b88c7175e5d5be_arg_types_var_11128648322172781937[3] = { &__type_info__21586ce84f433a21, &__type_info__c19751d6d5da74e2, &__type_info__98064c57b4bcca5a };
const char * __type_info__83b88c7175e5d5be_arg_names_var_11128648322172781937[3] = { "self", "expr", "right" };
VarInfo __struct_info__9a70e6afd95b0571_field_109 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__af63eb4c86020609, nullptr, (TypeInfo **)__type_info__83b88c7175e5d5be_arg_types_var_11128648322172781937, __type_info__83b88c7175e5d5be_arg_names_var_11128648322172781937, 3, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<ExprMove> const ,smart_ptr_raw<Expression> const ))>::size, UINT64_C(0x83b88c7175e5d5be), "preVisitExprMoveRight", offsetof(soa::CollectAndReplaceIteratorFields,preVisitExprMoveRight), 0 };
TypeInfo * __type_info__e967adacac4d90ea_arg_types_var_11128648322172781937[2] = { &__type_info__21586ce84f433a21, &__type_info__93546827b32c5422 };
const char * __type_info__e967adacac4d90ea_arg_names_var_11128648322172781937[2] = { "self", "expr" };
VarInfo __struct_info__9a70e6afd95b0571_field_110 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__af63df4c8601f1a5, nullptr, (TypeInfo **)__type_info__e967adacac4d90ea_arg_types_var_11128648322172781937, __type_info__e967adacac4d90ea_arg_names_var_11128648322172781937, 2, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((bool,ast::AstVisitor,smart_ptr_raw<ExprClone> const ))>::size, UINT64_C(0xe967adacac4d90ea), "isRightFirstExprClone", offsetof(soa::CollectAndReplaceIteratorFields,isRightFirstExprClone), 0 };
TypeInfo * __type_info__cb28510ea1770cd5_arg_types_var_11128648322172781937[2] = { &__type_info__21586ce84f433a21, &__type_info__93546827b32c5422 };
const char * __type_info__cb28510ea1770cd5_arg_names_var_11128648322172781937[2] = { "self", "expr" };
VarInfo __struct_info__9a70e6afd95b0571_field_111 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__af63eb4c86020609, nullptr, (TypeInfo **)__type_info__cb28510ea1770cd5_arg_types_var_11128648322172781937, __type_info__cb28510ea1770cd5_arg_names_var_11128648322172781937, 2, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<ExprClone> const ))>::size, UINT64_C(0xcb28510ea1770cd5), "preVisitExprClone", offsetof(soa::CollectAndReplaceIteratorFields,preVisitExprClone), 0 };
TypeInfo * __type_info__7a19c2845711c226_arg_types_var_11128648322172781937[2] = { &__type_info__21586ce84f433a21, &__type_info__93546827b32c5422 };
const char * __type_info__7a19c2845711c226_arg_names_var_11128648322172781937[2] = { "self", "expr" };
VarInfo __struct_info__9a70e6afd95b0571_field_112 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__6636442e03391ebf, nullptr, (TypeInfo **)__type_info__7a19c2845711c226_arg_types_var_11128648322172781937, __type_info__7a19c2845711c226_arg_names_var_11128648322172781937, 2, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((smart_ptr_raw<Expression>,ast::AstVisitor,smart_ptr_raw<ExprClone> const ))>::size, UINT64_C(0x7a19c2845711c226), "visitExprClone", offsetof(soa::CollectAndReplaceIteratorFields,visitExprClone), 0 };
TypeInfo * __type_info__f1a504e35780396_arg_types_var_11128648322172781937[3] = { &__type_info__21586ce84f433a21, &__type_info__93546827b32c5422, &__type_info__98064c57b4bcca5a };
const char * __type_info__f1a504e35780396_arg_names_var_11128648322172781937[3] = { "self", "expr", "right" };
VarInfo __struct_info__9a70e6afd95b0571_field_113 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__af63eb4c86020609, nullptr, (TypeInfo **)__type_info__f1a504e35780396_arg_types_var_11128648322172781937, __type_info__f1a504e35780396_arg_names_var_11128648322172781937, 3, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<ExprClone> const ,smart_ptr_raw<Expression> const ))>::size, UINT64_C(0xf1a504e35780396), "preVisitExprCloneRight", offsetof(soa::CollectAndReplaceIteratorFields,preVisitExprCloneRight), 0 };
TypeInfo * __type_info__272782625f3d78fb_arg_types_var_11128648322172781937[2] = { &__type_info__21586ce84f433a21, &__type_info__83c768ad9b3f81ea };
const char * __type_info__272782625f3d78fb_arg_names_var_11128648322172781937[2] = { "self", "expr" };
VarInfo __struct_info__9a70e6afd95b0571_field_114 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__af63df4c8601f1a5, nullptr, (TypeInfo **)__type_info__272782625f3d78fb_arg_types_var_11128648322172781937, __type_info__272782625f3d78fb_arg_names_var_11128648322172781937, 2, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((bool,ast::AstVisitor,smart_ptr_raw<ExprAssume> const ))>::size, UINT64_C(0x272782625f3d78fb), "canVisitWithAliasSubexpression", offsetof(soa::CollectAndReplaceIteratorFields,canVisitWithAliasSubexpression), 0 };
TypeInfo * __type_info__5cd17e03f5c3b2e2_arg_types_var_11128648322172781937[2] = { &__type_info__21586ce84f433a21, &__type_info__83c768ad9b3f81ea };
const char * __type_info__5cd17e03f5c3b2e2_arg_names_var_11128648322172781937[2] = { "self", "expr" };
VarInfo __struct_info__9a70e6afd95b0571_field_115 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__af63eb4c86020609, nullptr, (TypeInfo **)__type_info__5cd17e03f5c3b2e2_arg_types_var_11128648322172781937, __type_info__5cd17e03f5c3b2e2_arg_names_var_11128648322172781937, 2, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<ExprAssume> const ))>::size, UINT64_C(0x5cd17e03f5c3b2e2), "preVisitExprAssume", offsetof(soa::CollectAndReplaceIteratorFields,preVisitExprAssume), 0 };
TypeInfo * __type_info__71a2747673956140_arg_types_var_11128648322172781937[2] = { &__type_info__21586ce84f433a21, &__type_info__83c768ad9b3f81ea };
const char * __type_info__71a2747673956140_arg_names_var_11128648322172781937[2] = { "self", "expr" };
VarInfo __struct_info__9a70e6afd95b0571_field_116 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__6636442e03391ebf, nullptr, (TypeInfo **)__type_info__71a2747673956140_arg_types_var_11128648322172781937, __type_info__71a2747673956140_arg_names_var_11128648322172781937, 2, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((smart_ptr_raw<Expression>,ast::AstVisitor,smart_ptr_raw<ExprAssume> const ))>::size, UINT64_C(0x71a2747673956140), "visitExprAssume", offsetof(soa::CollectAndReplaceIteratorFields,visitExprAssume), 0 };
TypeInfo * __type_info__3beb4d70ecef968e_arg_types_var_11128648322172781937[2] = { &__type_info__21586ce84f433a21, &__type_info__c758d466d1a06ae2 };
const char * __type_info__3beb4d70ecef968e_arg_names_var_11128648322172781937[2] = { "self", "expr" };
VarInfo __struct_info__9a70e6afd95b0571_field_117 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__af63eb4c86020609, nullptr, (TypeInfo **)__type_info__3beb4d70ecef968e_arg_types_var_11128648322172781937, __type_info__3beb4d70ecef968e_arg_names_var_11128648322172781937, 2, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<ExprWith> const ))>::size, UINT64_C(0x3beb4d70ecef968e), "preVisitExprWith", offsetof(soa::CollectAndReplaceIteratorFields,preVisitExprWith), 0 };
TypeInfo * __type_info__8f660ef5be7cfd26_arg_types_var_11128648322172781937[2] = { &__type_info__21586ce84f433a21, &__type_info__c758d466d1a06ae2 };
const char * __type_info__8f660ef5be7cfd26_arg_names_var_11128648322172781937[2] = { "self", "expr" };
VarInfo __struct_info__9a70e6afd95b0571_field_118 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__6636442e03391ebf, nullptr, (TypeInfo **)__type_info__8f660ef5be7cfd26_arg_types_var_11128648322172781937, __type_info__8f660ef5be7cfd26_arg_names_var_11128648322172781937, 2, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((smart_ptr_raw<Expression>,ast::AstVisitor,smart_ptr_raw<ExprWith> const ))>::size, UINT64_C(0x8f660ef5be7cfd26), "visitExprWith", offsetof(soa::CollectAndReplaceIteratorFields,visitExprWith), 0 };
TypeInfo * __type_info__675adeddb415795e_arg_types_var_11128648322172781937[3] = { &__type_info__21586ce84f433a21, &__type_info__c758d466d1a06ae2, &__type_info__98064c57b4bcca5a };
const char * __type_info__675adeddb415795e_arg_names_var_11128648322172781937[3] = { "self", "expr", "right" };
VarInfo __struct_info__9a70e6afd95b0571_field_119 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__af63eb4c86020609, nullptr, (TypeInfo **)__type_info__675adeddb415795e_arg_types_var_11128648322172781937, __type_info__675adeddb415795e_arg_names_var_11128648322172781937, 3, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<ExprWith> const ,smart_ptr_raw<Expression> const ))>::size, UINT64_C(0x675adeddb415795e), "preVisitExprWithBody", offsetof(soa::CollectAndReplaceIteratorFields,preVisitExprWithBody), 0 };
TypeInfo * __type_info__f5c2f70c6be986b_arg_types_var_11128648322172781937[2] = { &__type_info__21586ce84f433a21, &__type_info__9cac32b4050a2fb8 };
const char * __type_info__f5c2f70c6be986b_arg_names_var_11128648322172781937[2] = { "self", "expr" };
VarInfo __struct_info__9a70e6afd95b0571_field_120 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__af63eb4c86020609, nullptr, (TypeInfo **)__type_info__f5c2f70c6be986b_arg_types_var_11128648322172781937, __type_info__f5c2f70c6be986b_arg_names_var_11128648322172781937, 2, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<ExprWhile> const ))>::size, UINT64_C(0xf5c2f70c6be986b), "preVisitExprWhile", offsetof(soa::CollectAndReplaceIteratorFields,preVisitExprWhile), 0 };
TypeInfo * __type_info__5b7dba98e5a27698_arg_types_var_11128648322172781937[2] = { &__type_info__21586ce84f433a21, &__type_info__9cac32b4050a2fb8 };
const char * __type_info__5b7dba98e5a27698_arg_names_var_11128648322172781937[2] = { "self", "expr" };
VarInfo __struct_info__9a70e6afd95b0571_field_121 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__6636442e03391ebf, nullptr, (TypeInfo **)__type_info__5b7dba98e5a27698_arg_types_var_11128648322172781937, __type_info__5b7dba98e5a27698_arg_names_var_11128648322172781937, 2, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((smart_ptr_raw<Expression>,ast::AstVisitor,smart_ptr_raw<ExprWhile> const ))>::size, UINT64_C(0x5b7dba98e5a27698), "visitExprWhile", offsetof(soa::CollectAndReplaceIteratorFields,visitExprWhile), 0 };
TypeInfo * __type_info__8e34a0c91746f8bd_arg_types_var_11128648322172781937[3] = { &__type_info__21586ce84f433a21, &__type_info__9cac32b4050a2fb8, &__type_info__98064c57b4bcca5a };
const char * __type_info__8e34a0c91746f8bd_arg_names_var_11128648322172781937[3] = { "self", "expr", "right" };
VarInfo __struct_info__9a70e6afd95b0571_field_122 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__af63eb4c86020609, nullptr, (TypeInfo **)__type_info__8e34a0c91746f8bd_arg_types_var_11128648322172781937, __type_info__8e34a0c91746f8bd_arg_names_var_11128648322172781937, 3, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<ExprWhile> const ,smart_ptr_raw<Expression> const ))>::size, UINT64_C(0x8e34a0c91746f8bd), "preVisitExprWhileBody", offsetof(soa::CollectAndReplaceIteratorFields,preVisitExprWhileBody), 0 };
TypeInfo * __type_info__c7b5d73badb783a0_arg_types_var_11128648322172781937[2] = { &__type_info__21586ce84f433a21, &__type_info__c1c6f9bc0741f232 };
const char * __type_info__c7b5d73badb783a0_arg_names_var_11128648322172781937[2] = { "self", "expr" };
VarInfo __struct_info__9a70e6afd95b0571_field_123 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__af63eb4c86020609, nullptr, (TypeInfo **)__type_info__c7b5d73badb783a0_arg_types_var_11128648322172781937, __type_info__c7b5d73badb783a0_arg_names_var_11128648322172781937, 2, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<ExprTryCatch> const ))>::size, UINT64_C(0xc7b5d73badb783a0), "preVisitExprTryCatch", offsetof(soa::CollectAndReplaceIteratorFields,preVisitExprTryCatch), 0 };
TypeInfo * __type_info__9caa07bf3cd8a75a_arg_types_var_11128648322172781937[2] = { &__type_info__21586ce84f433a21, &__type_info__c1c6f9bc0741f232 };
const char * __type_info__9caa07bf3cd8a75a_arg_names_var_11128648322172781937[2] = { "self", "expr" };
VarInfo __struct_info__9a70e6afd95b0571_field_124 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__6636442e03391ebf, nullptr, (TypeInfo **)__type_info__9caa07bf3cd8a75a_arg_types_var_11128648322172781937, __type_info__9caa07bf3cd8a75a_arg_names_var_11128648322172781937, 2, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((smart_ptr_raw<Expression>,ast::AstVisitor,smart_ptr_raw<ExprTryCatch> const ))>::size, UINT64_C(0x9caa07bf3cd8a75a), "visitExprTryCatch", offsetof(soa::CollectAndReplaceIteratorFields,visitExprTryCatch), 0 };
TypeInfo * __type_info__52cd40d12d47b3b0_arg_types_var_11128648322172781937[3] = { &__type_info__21586ce84f433a21, &__type_info__c1c6f9bc0741f232, &__type_info__98064c57b4bcca5a };
const char * __type_info__52cd40d12d47b3b0_arg_names_var_11128648322172781937[3] = { "self", "expr", "right" };
VarInfo __struct_info__9a70e6afd95b0571_field_125 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__af63eb4c86020609, nullptr, (TypeInfo **)__type_info__52cd40d12d47b3b0_arg_types_var_11128648322172781937, __type_info__52cd40d12d47b3b0_arg_names_var_11128648322172781937, 3, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<ExprTryCatch> const ,smart_ptr_raw<Expression> const ))>::size, UINT64_C(0x52cd40d12d47b3b0), "preVisitExprTryCatchCatch", offsetof(soa::CollectAndReplaceIteratorFields,preVisitExprTryCatchCatch), 0 };
TypeInfo * __type_info__693a03bc37b663ba_arg_types_var_11128648322172781937[2] = { &__type_info__21586ce84f433a21, &__type_info__88db72c3eb8c93b1 };
const char * __type_info__693a03bc37b663ba_arg_names_var_11128648322172781937[2] = { "self", "expr" };
VarInfo __struct_info__9a70e6afd95b0571_field_126 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__af63eb4c86020609, nullptr, (TypeInfo **)__type_info__693a03bc37b663ba_arg_types_var_11128648322172781937, __type_info__693a03bc37b663ba_arg_names_var_11128648322172781937, 2, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<ExprIfThenElse> const ))>::size, UINT64_C(0x693a03bc37b663ba), "preVisitExprIfThenElse", offsetof(soa::CollectAndReplaceIteratorFields,preVisitExprIfThenElse), 0 };
TypeInfo * __type_info__a626ee38b2717637_arg_types_var_11128648322172781937[2] = { &__type_info__21586ce84f433a21, &__type_info__88db72c3eb8c93b1 };
const char * __type_info__a626ee38b2717637_arg_names_var_11128648322172781937[2] = { "self", "expr" };
VarInfo __struct_info__9a70e6afd95b0571_field_127 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__6636442e03391ebf, nullptr, (TypeInfo **)__type_info__a626ee38b2717637_arg_types_var_11128648322172781937, __type_info__a626ee38b2717637_arg_names_var_11128648322172781937, 2, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((smart_ptr_raw<Expression>,ast::AstVisitor,smart_ptr_raw<ExprIfThenElse> const ))>::size, UINT64_C(0xa626ee38b2717637), "visitExprIfThenElse", offsetof(soa::CollectAndReplaceIteratorFields,visitExprIfThenElse), 0 };
TypeInfo * __type_info__d5bee88633a8cbf1_arg_types_var_11128648322172781937[3] = { &__type_info__21586ce84f433a21, &__type_info__88db72c3eb8c93b1, &__type_info__98064c57b4bcca5a };
const char * __type_info__d5bee88633a8cbf1_arg_names_var_11128648322172781937[3] = { "self", "expr", "ifBlock" };
VarInfo __struct_info__9a70e6afd95b0571_field_128 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__af63eb4c86020609, nullptr, (TypeInfo **)__type_info__d5bee88633a8cbf1_arg_types_var_11128648322172781937, __type_info__d5bee88633a8cbf1_arg_names_var_11128648322172781937, 3, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<ExprIfThenElse> const ,smart_ptr_raw<Expression> const ))>::size, UINT64_C(0xd5bee88633a8cbf1), "preVisitExprIfThenElseIfBlock", offsetof(soa::CollectAndReplaceIteratorFields,preVisitExprIfThenElseIfBlock), 0 };
TypeInfo * __type_info__f7af45efabdd6cb8_arg_types_var_11128648322172781937[3] = { &__type_info__21586ce84f433a21, &__type_info__88db72c3eb8c93b1, &__type_info__98064c57b4bcca5a };
const char * __type_info__f7af45efabdd6cb8_arg_names_var_11128648322172781937[3] = { "self", "expr", "elseBlock" };
VarInfo __struct_info__9a70e6afd95b0571_field_129 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__af63eb4c86020609, nullptr, (TypeInfo **)__type_info__f7af45efabdd6cb8_arg_types_var_11128648322172781937, __type_info__f7af45efabdd6cb8_arg_names_var_11128648322172781937, 3, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<ExprIfThenElse> const ,smart_ptr_raw<Expression> const ))>::size, UINT64_C(0xf7af45efabdd6cb8), "preVisitExprIfThenElseElseBlock", offsetof(soa::CollectAndReplaceIteratorFields,preVisitExprIfThenElseElseBlock), 0 };
TypeInfo * __type_info__5ce990d6dba720_arg_types_var_11128648322172781937[2] = { &__type_info__21586ce84f433a21, &__type_info__9745884abdafbe87 };
const char * __type_info__5ce990d6dba720_arg_names_var_11128648322172781937[2] = { "self", "expr" };
VarInfo __struct_info__9a70e6afd95b0571_field_130 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__af63eb4c86020609, nullptr, (TypeInfo **)__type_info__5ce990d6dba720_arg_types_var_11128648322172781937, __type_info__5ce990d6dba720_arg_names_var_11128648322172781937, 2, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<ExprFor> const ))>::size, UINT64_C(0x5ce990d6dba720), "preVisitExprFor", offsetof(soa::CollectAndReplaceIteratorFields,preVisitExprFor), 0 };
TypeInfo * __type_info__887f1af5b8b42df1_arg_types_var_11128648322172781937[2] = { &__type_info__21586ce84f433a21, &__type_info__9745884abdafbe87 };
const char * __type_info__887f1af5b8b42df1_arg_names_var_11128648322172781937[2] = { "self", "expr" };
VarInfo __struct_info__9a70e6afd95b0571_field_131 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__6636442e03391ebf, nullptr, (TypeInfo **)__type_info__887f1af5b8b42df1_arg_types_var_11128648322172781937, __type_info__887f1af5b8b42df1_arg_names_var_11128648322172781937, 2, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((smart_ptr_raw<Expression>,ast::AstVisitor,smart_ptr_raw<ExprFor> const ))>::size, UINT64_C(0x887f1af5b8b42df1), "visitExprFor", offsetof(soa::CollectAndReplaceIteratorFields,visitExprFor), 0 };
TypeInfo * __type_info__a59fe12bf7da1e5d_arg_types_var_11128648322172781937[4] = { &__type_info__21586ce84f433a21, &__type_info__9745884abdafbe87, &__type_info__a3a6bcfebaf8fcd8, &__type_info__af81fe4c86352052 };
const char * __type_info__a59fe12bf7da1e5d_arg_names_var_11128648322172781937[4] = { "self", "expr", "svar", "last" };
VarInfo __struct_info__9a70e6afd95b0571_field_132 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__af63eb4c86020609, nullptr, (TypeInfo **)__type_info__a59fe12bf7da1e5d_arg_types_var_11128648322172781937, __type_info__a59fe12bf7da1e5d_arg_names_var_11128648322172781937, 4, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<ExprFor> const ,smart_ptr_raw<Variable> const ,bool))>::size, UINT64_C(0xa59fe12bf7da1e5d), "preVisitExprForVariable", offsetof(soa::CollectAndReplaceIteratorFields,preVisitExprForVariable), 0 };
TypeInfo * __type_info__4f07c4b2a0aaef3a_arg_types_var_11128648322172781937[4] = { &__type_info__21586ce84f433a21, &__type_info__9745884abdafbe87, &__type_info__a3a6bcfebaf8fcd8, &__type_info__af81fe4c86352052 };
const char * __type_info__4f07c4b2a0aaef3a_arg_names_var_11128648322172781937[4] = { "self", "expr", "svar", "last" };
VarInfo __struct_info__9a70e6afd95b0571_field_133 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__4d5fdda373bcfbd1, nullptr, (TypeInfo **)__type_info__4f07c4b2a0aaef3a_arg_types_var_11128648322172781937, __type_info__4f07c4b2a0aaef3a_arg_names_var_11128648322172781937, 4, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((smart_ptr_raw<Variable>,ast::AstVisitor,smart_ptr_raw<ExprFor> const ,smart_ptr_raw<Variable> const ,bool))>::size, UINT64_C(0x4f07c4b2a0aaef3a), "visitExprForVariable", offsetof(soa::CollectAndReplaceIteratorFields,visitExprForVariable), 0 };
TypeInfo * __type_info__88fe62227a70b5_arg_types_var_11128648322172781937[4] = { &__type_info__21586ce84f433a21, &__type_info__9745884abdafbe87, &__type_info__98064c57b4bcca5a, &__type_info__af81fe4c86352052 };
const char * __type_info__88fe62227a70b5_arg_names_var_11128648322172781937[4] = { "self", "expr", "source", "last" };
VarInfo __struct_info__9a70e6afd95b0571_field_134 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__af63eb4c86020609, nullptr, (TypeInfo **)__type_info__88fe62227a70b5_arg_types_var_11128648322172781937, __type_info__88fe62227a70b5_arg_names_var_11128648322172781937, 4, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<ExprFor> const ,smart_ptr_raw<Expression> const ,bool))>::size, UINT64_C(0x88fe62227a70b5), "preVisitExprForSource", offsetof(soa::CollectAndReplaceIteratorFields,preVisitExprForSource), 0 };
TypeInfo * __type_info__f95f7a9a754370e7_arg_types_var_11128648322172781937[4] = { &__type_info__21586ce84f433a21, &__type_info__9745884abdafbe87, &__type_info__98064c57b4bcca5a, &__type_info__af81fe4c86352052 };
const char * __type_info__f95f7a9a754370e7_arg_names_var_11128648322172781937[4] = { "self", "expr", "source", "last" };
VarInfo __struct_info__9a70e6afd95b0571_field_135 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__6636442e03391ebf, nullptr, (TypeInfo **)__type_info__f95f7a9a754370e7_arg_types_var_11128648322172781937, __type_info__f95f7a9a754370e7_arg_names_var_11128648322172781937, 4, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((smart_ptr_raw<Expression>,ast::AstVisitor,smart_ptr_raw<ExprFor> const ,smart_ptr_raw<Expression> const ,bool))>::size, UINT64_C(0xf95f7a9a754370e7), "visitExprForSource", offsetof(soa::CollectAndReplaceIteratorFields,visitExprForSource), 0 };
TypeInfo * __type_info__dc86fe96e4943ae9_arg_types_var_11128648322172781937[2] = { &__type_info__21586ce84f433a21, &__type_info__9745884abdafbe87 };
const char * __type_info__dc86fe96e4943ae9_arg_names_var_11128648322172781937[2] = { "self", "expr" };
VarInfo __struct_info__9a70e6afd95b0571_field_136 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__af63eb4c86020609, nullptr, (TypeInfo **)__type_info__dc86fe96e4943ae9_arg_types_var_11128648322172781937, __type_info__dc86fe96e4943ae9_arg_names_var_11128648322172781937, 2, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<ExprFor> const ))>::size, UINT64_C(0xdc86fe96e4943ae9), "preVisitExprForStack", offsetof(soa::CollectAndReplaceIteratorFields,preVisitExprForStack), 0 };
TypeInfo * __type_info__2fa4ec6edbdc6506_arg_types_var_11128648322172781937[2] = { &__type_info__21586ce84f433a21, &__type_info__9745884abdafbe87 };
const char * __type_info__2fa4ec6edbdc6506_arg_names_var_11128648322172781937[2] = { "self", "expr" };
VarInfo __struct_info__9a70e6afd95b0571_field_137 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__af63eb4c86020609, nullptr, (TypeInfo **)__type_info__2fa4ec6edbdc6506_arg_types_var_11128648322172781937, __type_info__2fa4ec6edbdc6506_arg_names_var_11128648322172781937, 2, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<ExprFor> const ))>::size, UINT64_C(0x2fa4ec6edbdc6506), "preVisitExprForBody", offsetof(soa::CollectAndReplaceIteratorFields,preVisitExprForBody), 0 };
TypeInfo * __type_info__cd50256ede96774b_arg_types_var_11128648322172781937[2] = { &__type_info__21586ce84f433a21, &__type_info__4191dbf23146a87e };
const char * __type_info__cd50256ede96774b_arg_names_var_11128648322172781937[2] = { "self", "expr" };
VarInfo __struct_info__9a70e6afd95b0571_field_138 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__af63eb4c86020609, nullptr, (TypeInfo **)__type_info__cd50256ede96774b_arg_types_var_11128648322172781937, __type_info__cd50256ede96774b_arg_names_var_11128648322172781937, 2, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<ExprMakeVariant> const ))>::size, UINT64_C(0xcd50256ede96774b), "preVisitExprMakeVariant", offsetof(soa::CollectAndReplaceIteratorFields,preVisitExprMakeVariant), 0 };
TypeInfo * __type_info__fd9ecb1e48a60e70_arg_types_var_11128648322172781937[2] = { &__type_info__21586ce84f433a21, &__type_info__4191dbf23146a87e };
const char * __type_info__fd9ecb1e48a60e70_arg_names_var_11128648322172781937[2] = { "self", "expr" };
VarInfo __struct_info__9a70e6afd95b0571_field_139 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__6636442e03391ebf, nullptr, (TypeInfo **)__type_info__fd9ecb1e48a60e70_arg_types_var_11128648322172781937, __type_info__fd9ecb1e48a60e70_arg_names_var_11128648322172781937, 2, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((smart_ptr_raw<Expression>,ast::AstVisitor,smart_ptr_raw<ExprMakeVariant> const ))>::size, UINT64_C(0xfd9ecb1e48a60e70), "visitExprMakeVariant", offsetof(soa::CollectAndReplaceIteratorFields,visitExprMakeVariant), 0 };
TypeInfo * __type_info__fb74d0d62aae33d6_arg_types_var_11128648322172781937[5] = { &__type_info__21586ce84f433a21, &__type_info__4191dbf23146a87e, &__type_info__af8afe4c86446b52, &__type_info__9a5e492166d49949, &__type_info__af81fe4c86352052 };
const char * __type_info__fb74d0d62aae33d6_arg_names_var_11128648322172781937[5] = { "self", "expr", "index", "decl", "last" };
VarInfo __struct_info__9a70e6afd95b0571_field_140 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__af63eb4c86020609, nullptr, (TypeInfo **)__type_info__fb74d0d62aae33d6_arg_types_var_11128648322172781937, __type_info__fb74d0d62aae33d6_arg_names_var_11128648322172781937, 5, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<ExprMakeVariant> const ,int32_t,smart_ptr_raw<MakeFieldDecl> const ,bool))>::size, UINT64_C(0xfb74d0d62aae33d6), "preVisitExprMakeVariantField", offsetof(soa::CollectAndReplaceIteratorFields,preVisitExprMakeVariantField), 0 };
TypeInfo * __type_info__f87786ae99453a15_arg_types_var_11128648322172781937[5] = { &__type_info__21586ce84f433a21, &__type_info__4191dbf23146a87e, &__type_info__af8afe4c86446b52, &__type_info__9a5e492166d49949, &__type_info__af81fe4c86352052 };
const char * __type_info__f87786ae99453a15_arg_names_var_11128648322172781937[5] = { "self", "expr", "index", "decl", "last" };
VarInfo __struct_info__9a70e6afd95b0571_field_141 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__c52835f1e7c9ab84, nullptr, (TypeInfo **)__type_info__f87786ae99453a15_arg_types_var_11128648322172781937, __type_info__f87786ae99453a15_arg_names_var_11128648322172781937, 5, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((smart_ptr_raw<MakeFieldDecl>,ast::AstVisitor,smart_ptr_raw<ExprMakeVariant> const ,int32_t,smart_ptr_raw<MakeFieldDecl> const ,bool))>::size, UINT64_C(0xf87786ae99453a15), "visitExprMakeVariantField", offsetof(soa::CollectAndReplaceIteratorFields,visitExprMakeVariantField), 0 };
TypeInfo * __type_info__897887e675eea03_arg_types_var_11128648322172781937[2] = { &__type_info__21586ce84f433a21, &__type_info__5276a743108434eb };
const char * __type_info__897887e675eea03_arg_names_var_11128648322172781937[2] = { "self", "expr" };
VarInfo __struct_info__9a70e6afd95b0571_field_142 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__af63df4c8601f1a5, nullptr, (TypeInfo **)__type_info__897887e675eea03_arg_types_var_11128648322172781937, __type_info__897887e675eea03_arg_names_var_11128648322172781937, 2, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((bool,ast::AstVisitor,smart_ptr_raw<ExprMakeStruct> const ))>::size, UINT64_C(0x897887e675eea03), "canVisitExprMakeStructBody", offsetof(soa::CollectAndReplaceIteratorFields,canVisitExprMakeStructBody), 0 };
TypeInfo * __type_info__26ce727e80b11f26_arg_types_var_11128648322172781937[3] = { &__type_info__21586ce84f433a21, &__type_info__5276a743108434eb, &__type_info__98064c57b4bcca5a };
const char * __type_info__26ce727e80b11f26_arg_names_var_11128648322172781937[3] = { "self", "expr", "blk" };
VarInfo __struct_info__9a70e6afd95b0571_field_143 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__af63df4c8601f1a5, nullptr, (TypeInfo **)__type_info__26ce727e80b11f26_arg_types_var_11128648322172781937, __type_info__26ce727e80b11f26_arg_names_var_11128648322172781937, 3, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((bool,ast::AstVisitor,smart_ptr_raw<ExprMakeStruct> const ,smart_ptr_raw<Expression> const ))>::size, UINT64_C(0x26ce727e80b11f26), "canVisitExprMakeStructBlock", offsetof(soa::CollectAndReplaceIteratorFields,canVisitExprMakeStructBlock), 0 };
TypeInfo * __type_info__b8d35c3131c27faa_arg_types_var_11128648322172781937[2] = { &__type_info__21586ce84f433a21, &__type_info__5276a743108434eb };
const char * __type_info__b8d35c3131c27faa_arg_names_var_11128648322172781937[2] = { "self", "expr" };
VarInfo __struct_info__9a70e6afd95b0571_field_144 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__af63eb4c86020609, nullptr, (TypeInfo **)__type_info__b8d35c3131c27faa_arg_types_var_11128648322172781937, __type_info__b8d35c3131c27faa_arg_names_var_11128648322172781937, 2, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<ExprMakeStruct> const ))>::size, UINT64_C(0xb8d35c3131c27faa), "preVisitExprMakeStruct", offsetof(soa::CollectAndReplaceIteratorFields,preVisitExprMakeStruct), 0 };
TypeInfo * __type_info__6933b88d894a9c35_arg_types_var_11128648322172781937[2] = { &__type_info__21586ce84f433a21, &__type_info__5276a743108434eb };
const char * __type_info__6933b88d894a9c35_arg_names_var_11128648322172781937[2] = { "self", "expr" };
VarInfo __struct_info__9a70e6afd95b0571_field_145 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__6636442e03391ebf, nullptr, (TypeInfo **)__type_info__6933b88d894a9c35_arg_types_var_11128648322172781937, __type_info__6933b88d894a9c35_arg_names_var_11128648322172781937, 2, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((smart_ptr_raw<Expression>,ast::AstVisitor,smart_ptr_raw<ExprMakeStruct> const ))>::size, UINT64_C(0x6933b88d894a9c35), "visitExprMakeStruct", offsetof(soa::CollectAndReplaceIteratorFields,visitExprMakeStruct), 0 };
TypeInfo * __type_info__5b233a28c6df1f6b_arg_types_var_11128648322172781937[4] = { &__type_info__21586ce84f433a21, &__type_info__5276a743108434eb, &__type_info__af8afe4c86446b52, &__type_info__af81fe4c86352052 };
const char * __type_info__5b233a28c6df1f6b_arg_names_var_11128648322172781937[4] = { "self", "expr", "index", "last" };
VarInfo __struct_info__9a70e6afd95b0571_field_146 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__af63eb4c86020609, nullptr, (TypeInfo **)__type_info__5b233a28c6df1f6b_arg_types_var_11128648322172781937, __type_info__5b233a28c6df1f6b_arg_names_var_11128648322172781937, 4, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<ExprMakeStruct> const ,int32_t,bool))>::size, UINT64_C(0x5b233a28c6df1f6b), "preVisitExprMakeStructIndex", offsetof(soa::CollectAndReplaceIteratorFields,preVisitExprMakeStructIndex), 0 };
TypeInfo * __type_info__a27f172ef37a5598_arg_types_var_11128648322172781937[4] = { &__type_info__21586ce84f433a21, &__type_info__5276a743108434eb, &__type_info__af8afe4c86446b52, &__type_info__af81fe4c86352052 };
const char * __type_info__a27f172ef37a5598_arg_names_var_11128648322172781937[4] = { "self", "expr", "index", "last" };
VarInfo __struct_info__9a70e6afd95b0571_field_147 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__af63eb4c86020609, nullptr, (TypeInfo **)__type_info__a27f172ef37a5598_arg_types_var_11128648322172781937, __type_info__a27f172ef37a5598_arg_names_var_11128648322172781937, 4, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<ExprMakeStruct> const ,int32_t,bool))>::size, UINT64_C(0xa27f172ef37a5598), "visitExprMakeStructIndex", offsetof(soa::CollectAndReplaceIteratorFields,visitExprMakeStructIndex), 0 };
TypeInfo * __type_info__191c5367d280530f_arg_types_var_11128648322172781937[5] = { &__type_info__21586ce84f433a21, &__type_info__5276a743108434eb, &__type_info__af8afe4c86446b52, &__type_info__9a5e492166d49949, &__type_info__af81fe4c86352052 };
const char * __type_info__191c5367d280530f_arg_names_var_11128648322172781937[5] = { "self", "expr", "index", "decl", "last" };
VarInfo __struct_info__9a70e6afd95b0571_field_148 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__af63eb4c86020609, nullptr, (TypeInfo **)__type_info__191c5367d280530f_arg_types_var_11128648322172781937, __type_info__191c5367d280530f_arg_names_var_11128648322172781937, 5, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<ExprMakeStruct> const ,int32_t,smart_ptr_raw<MakeFieldDecl> const ,bool))>::size, UINT64_C(0x191c5367d280530f), "preVisitExprMakeStructField", offsetof(soa::CollectAndReplaceIteratorFields,preVisitExprMakeStructField), 0 };
TypeInfo * __type_info__6729923d92272a00_arg_types_var_11128648322172781937[5] = { &__type_info__21586ce84f433a21, &__type_info__5276a743108434eb, &__type_info__af8afe4c86446b52, &__type_info__9a5e492166d49949, &__type_info__af81fe4c86352052 };
const char * __type_info__6729923d92272a00_arg_names_var_11128648322172781937[5] = { "self", "expr", "index", "decl", "last" };
VarInfo __struct_info__9a70e6afd95b0571_field_149 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__c52835f1e7c9ab84, nullptr, (TypeInfo **)__type_info__6729923d92272a00_arg_types_var_11128648322172781937, __type_info__6729923d92272a00_arg_names_var_11128648322172781937, 5, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((smart_ptr_raw<MakeFieldDecl>,ast::AstVisitor,smart_ptr_raw<ExprMakeStruct> const ,int32_t,smart_ptr_raw<MakeFieldDecl> const ,bool))>::size, UINT64_C(0x6729923d92272a00), "visitExprMakeStructField", offsetof(soa::CollectAndReplaceIteratorFields,visitExprMakeStructField), 0 };
TypeInfo * __type_info__f9c5abe21fc5d852_arg_types_var_11128648322172781937[3] = { &__type_info__21586ce84f433a21, &__type_info__5276a743108434eb, &__type_info__2dd484863625d80 };
const char * __type_info__f9c5abe21fc5d852_arg_names_var_11128648322172781937[3] = { "self", "expr", "blk" };
VarInfo __struct_info__9a70e6afd95b0571_field_150 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__af63eb4c86020609, nullptr, (TypeInfo **)__type_info__f9c5abe21fc5d852_arg_types_var_11128648322172781937, __type_info__f9c5abe21fc5d852_arg_names_var_11128648322172781937, 3, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<ExprMakeStruct> const ,smart_ptr_raw<Expression> const ))>::size, UINT64_C(0xf9c5abe21fc5d852), "preVisitMakeStructureBlock", offsetof(soa::CollectAndReplaceIteratorFields,preVisitMakeStructureBlock), 0 };
TypeInfo * __type_info__b919de3205fd207d_arg_types_var_11128648322172781937[3] = { &__type_info__21586ce84f433a21, &__type_info__5276a743108434eb, &__type_info__2dd484863625d80 };
const char * __type_info__b919de3205fd207d_arg_names_var_11128648322172781937[3] = { "self", "expr", "blk" };
VarInfo __struct_info__9a70e6afd95b0571_field_151 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__6636442e03391ebf, nullptr, (TypeInfo **)__type_info__b919de3205fd207d_arg_types_var_11128648322172781937, __type_info__b919de3205fd207d_arg_names_var_11128648322172781937, 3, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((smart_ptr_raw<Expression>,ast::AstVisitor,smart_ptr_raw<ExprMakeStruct> const ,smart_ptr_raw<Expression> const ))>::size, UINT64_C(0xb919de3205fd207d), "visitMakeStructureBlock", offsetof(soa::CollectAndReplaceIteratorFields,visitMakeStructureBlock), 0 };
TypeInfo * __type_info__2b1246e5ca993114_arg_types_var_11128648322172781937[2] = { &__type_info__21586ce84f433a21, &__type_info__f44650fbe99befd9 };
const char * __type_info__2b1246e5ca993114_arg_names_var_11128648322172781937[2] = { "self", "expr" };
VarInfo __struct_info__9a70e6afd95b0571_field_152 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__af63eb4c86020609, nullptr, (TypeInfo **)__type_info__2b1246e5ca993114_arg_types_var_11128648322172781937, __type_info__2b1246e5ca993114_arg_names_var_11128648322172781937, 2, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<ExprMakeArray> const ))>::size, UINT64_C(0x2b1246e5ca993114), "preVisitExprMakeArray", offsetof(soa::CollectAndReplaceIteratorFields,preVisitExprMakeArray), 0 };
TypeInfo * __type_info__449cd0956c95ce45_arg_types_var_11128648322172781937[2] = { &__type_info__21586ce84f433a21, &__type_info__f44650fbe99befd9 };
const char * __type_info__449cd0956c95ce45_arg_names_var_11128648322172781937[2] = { "self", "expr" };
VarInfo __struct_info__9a70e6afd95b0571_field_153 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__6636442e03391ebf, nullptr, (TypeInfo **)__type_info__449cd0956c95ce45_arg_types_var_11128648322172781937, __type_info__449cd0956c95ce45_arg_names_var_11128648322172781937, 2, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((smart_ptr_raw<Expression>,ast::AstVisitor,smart_ptr_raw<ExprMakeArray> const ))>::size, UINT64_C(0x449cd0956c95ce45), "visitExprMakeArray", offsetof(soa::CollectAndReplaceIteratorFields,visitExprMakeArray), 0 };
TypeInfo * __type_info__56f2ef6620de8473_arg_types_var_11128648322172781937[5] = { &__type_info__21586ce84f433a21, &__type_info__f44650fbe99befd9, &__type_info__af8afe4c86446b52, &__type_info__98064c57b4bcca5a, &__type_info__af81fe4c86352052 };
const char * __type_info__56f2ef6620de8473_arg_names_var_11128648322172781937[5] = { "self", "expr", "index", "init", "last" };
VarInfo __struct_info__9a70e6afd95b0571_field_154 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__af63eb4c86020609, nullptr, (TypeInfo **)__type_info__56f2ef6620de8473_arg_types_var_11128648322172781937, __type_info__56f2ef6620de8473_arg_names_var_11128648322172781937, 5, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<ExprMakeArray> const ,int32_t,smart_ptr_raw<Expression> const ,bool))>::size, UINT64_C(0x56f2ef6620de8473), "preVisitExprMakeArrayIndex", offsetof(soa::CollectAndReplaceIteratorFields,preVisitExprMakeArrayIndex), 0 };
TypeInfo * __type_info__fce64454ace4dd1c_arg_types_var_11128648322172781937[5] = { &__type_info__21586ce84f433a21, &__type_info__f44650fbe99befd9, &__type_info__af8afe4c86446b52, &__type_info__98064c57b4bcca5a, &__type_info__af81fe4c86352052 };
const char * __type_info__fce64454ace4dd1c_arg_names_var_11128648322172781937[5] = { "self", "expr", "index", "init", "last" };
VarInfo __struct_info__9a70e6afd95b0571_field_155 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__6636442e03391ebf, nullptr, (TypeInfo **)__type_info__fce64454ace4dd1c_arg_types_var_11128648322172781937, __type_info__fce64454ace4dd1c_arg_names_var_11128648322172781937, 5, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((smart_ptr_raw<Expression>,ast::AstVisitor,smart_ptr_raw<ExprMakeArray> const ,int32_t,smart_ptr_raw<Expression> const ,bool))>::size, UINT64_C(0xfce64454ace4dd1c), "visitExprMakeArrayIndex", offsetof(soa::CollectAndReplaceIteratorFields,visitExprMakeArrayIndex), 0 };
TypeInfo * __type_info__2ad4397cfa3f531c_arg_types_var_11128648322172781937[2] = { &__type_info__21586ce84f433a21, &__type_info__ea03eef331aabf4 };
const char * __type_info__2ad4397cfa3f531c_arg_names_var_11128648322172781937[2] = { "self", "expr" };
VarInfo __struct_info__9a70e6afd95b0571_field_156 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__af63eb4c86020609, nullptr, (TypeInfo **)__type_info__2ad4397cfa3f531c_arg_types_var_11128648322172781937, __type_info__2ad4397cfa3f531c_arg_names_var_11128648322172781937, 2, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<ExprMakeTuple> const ))>::size, UINT64_C(0x2ad4397cfa3f531c), "preVisitExprMakeTuple", offsetof(soa::CollectAndReplaceIteratorFields,preVisitExprMakeTuple), 0 };
TypeInfo * __type_info__742d9180a8f0f0_arg_types_var_11128648322172781937[2] = { &__type_info__21586ce84f433a21, &__type_info__ea03eef331aabf4 };
const char * __type_info__742d9180a8f0f0_arg_names_var_11128648322172781937[2] = { "self", "expr" };
VarInfo __struct_info__9a70e6afd95b0571_field_157 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__6636442e03391ebf, nullptr, (TypeInfo **)__type_info__742d9180a8f0f0_arg_types_var_11128648322172781937, __type_info__742d9180a8f0f0_arg_names_var_11128648322172781937, 2, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((smart_ptr_raw<Expression>,ast::AstVisitor,smart_ptr_raw<ExprMakeTuple> const ))>::size, UINT64_C(0x742d9180a8f0f0), "visitExprMakeTuple", offsetof(soa::CollectAndReplaceIteratorFields,visitExprMakeTuple), 0 };
TypeInfo * __type_info__e27e49cbdfa00d8b_arg_types_var_11128648322172781937[5] = { &__type_info__21586ce84f433a21, &__type_info__ea03eef331aabf4, &__type_info__af8afe4c86446b52, &__type_info__98064c57b4bcca5a, &__type_info__af81fe4c86352052 };
const char * __type_info__e27e49cbdfa00d8b_arg_names_var_11128648322172781937[5] = { "self", "expr", "index", "init", "last" };
VarInfo __struct_info__9a70e6afd95b0571_field_158 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__af63eb4c86020609, nullptr, (TypeInfo **)__type_info__e27e49cbdfa00d8b_arg_types_var_11128648322172781937, __type_info__e27e49cbdfa00d8b_arg_names_var_11128648322172781937, 5, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<ExprMakeTuple> const ,int32_t,smart_ptr_raw<Expression> const ,bool))>::size, UINT64_C(0xe27e49cbdfa00d8b), "preVisitExprMakeTupleIndex", offsetof(soa::CollectAndReplaceIteratorFields,preVisitExprMakeTupleIndex), 0 };
TypeInfo * __type_info__108bea9eac4569ad_arg_types_var_11128648322172781937[5] = { &__type_info__21586ce84f433a21, &__type_info__ea03eef331aabf4, &__type_info__af8afe4c86446b52, &__type_info__98064c57b4bcca5a, &__type_info__af81fe4c86352052 };
const char * __type_info__108bea9eac4569ad_arg_names_var_11128648322172781937[5] = { "self", "expr", "index", "init", "last" };
VarInfo __struct_info__9a70e6afd95b0571_field_159 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__6636442e03391ebf, nullptr, (TypeInfo **)__type_info__108bea9eac4569ad_arg_types_var_11128648322172781937, __type_info__108bea9eac4569ad_arg_names_var_11128648322172781937, 5, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((smart_ptr_raw<Expression>,ast::AstVisitor,smart_ptr_raw<ExprMakeTuple> const ,int32_t,smart_ptr_raw<Expression> const ,bool))>::size, UINT64_C(0x108bea9eac4569ad), "visitExprMakeTupleIndex", offsetof(soa::CollectAndReplaceIteratorFields,visitExprMakeTupleIndex), 0 };
TypeInfo * __type_info__5306041ae3eb1c95_arg_types_var_11128648322172781937[2] = { &__type_info__21586ce84f433a21, &__type_info__defdb920e82da0f4 };
const char * __type_info__5306041ae3eb1c95_arg_names_var_11128648322172781937[2] = { "self", "expr" };
VarInfo __struct_info__9a70e6afd95b0571_field_160 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__af63eb4c86020609, nullptr, (TypeInfo **)__type_info__5306041ae3eb1c95_arg_types_var_11128648322172781937, __type_info__5306041ae3eb1c95_arg_names_var_11128648322172781937, 2, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<ExprArrayComprehension> const ))>::size, UINT64_C(0x5306041ae3eb1c95), "preVisitExprArrayComprehension", offsetof(soa::CollectAndReplaceIteratorFields,preVisitExprArrayComprehension), 0 };
TypeInfo * __type_info__9a4f19b9e8272eee_arg_types_var_11128648322172781937[2] = { &__type_info__21586ce84f433a21, &__type_info__defdb920e82da0f4 };
const char * __type_info__9a4f19b9e8272eee_arg_names_var_11128648322172781937[2] = { "self", "expr" };
VarInfo __struct_info__9a70e6afd95b0571_field_161 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__6636442e03391ebf, nullptr, (TypeInfo **)__type_info__9a4f19b9e8272eee_arg_types_var_11128648322172781937, __type_info__9a4f19b9e8272eee_arg_names_var_11128648322172781937, 2, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((smart_ptr_raw<Expression>,ast::AstVisitor,smart_ptr_raw<ExprArrayComprehension> const ))>::size, UINT64_C(0x9a4f19b9e8272eee), "visitExprArrayComprehension", offsetof(soa::CollectAndReplaceIteratorFields,visitExprArrayComprehension), 0 };
TypeInfo * __type_info__3701ad32a2e980bd_arg_types_var_11128648322172781937[3] = { &__type_info__21586ce84f433a21, &__type_info__defdb920e82da0f4, &__type_info__98064c57b4bcca5a };
const char * __type_info__3701ad32a2e980bd_arg_names_var_11128648322172781937[3] = { "self", "expr", "subexrp" };
VarInfo __struct_info__9a70e6afd95b0571_field_162 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__af63eb4c86020609, nullptr, (TypeInfo **)__type_info__3701ad32a2e980bd_arg_types_var_11128648322172781937, __type_info__3701ad32a2e980bd_arg_names_var_11128648322172781937, 3, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<ExprArrayComprehension> const ,smart_ptr_raw<Expression> const ))>::size, UINT64_C(0x3701ad32a2e980bd), "preVisitExprArrayComprehensionSubexpr", offsetof(soa::CollectAndReplaceIteratorFields,preVisitExprArrayComprehensionSubexpr), 0 };
TypeInfo * __type_info__d23dc2afc10a292f_arg_types_var_11128648322172781937[3] = { &__type_info__21586ce84f433a21, &__type_info__defdb920e82da0f4, &__type_info__98064c57b4bcca5a };
const char * __type_info__d23dc2afc10a292f_arg_names_var_11128648322172781937[3] = { "self", "expr", "filter" };
VarInfo __struct_info__9a70e6afd95b0571_field_163 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__af63eb4c86020609, nullptr, (TypeInfo **)__type_info__d23dc2afc10a292f_arg_types_var_11128648322172781937, __type_info__d23dc2afc10a292f_arg_names_var_11128648322172781937, 3, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<ExprArrayComprehension> const ,smart_ptr_raw<Expression> const ))>::size, UINT64_C(0xd23dc2afc10a292f), "preVisitExprArrayComprehensionWhere", offsetof(soa::CollectAndReplaceIteratorFields,preVisitExprArrayComprehensionWhere), 0 };
TypeInfo * __type_info__1cbe4220792916dd_arg_types_var_11128648322172781937[3] = { &__type_info__21586ce84f433a21, &__type_info__563543a880fdcea2, &__type_info__98064c57b4bcca5a };
const char * __type_info__1cbe4220792916dd_arg_names_var_11128648322172781937[3] = { "self", "expr", "expr_" };
VarInfo __struct_info__9a70e6afd95b0571_field_164 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__af63df4c8601f1a5, nullptr, (TypeInfo **)__type_info__1cbe4220792916dd_arg_types_var_11128648322172781937, __type_info__1cbe4220792916dd_arg_names_var_11128648322172781937, 3, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((bool,ast::AstVisitor,smart_ptr_raw<ExprTypeInfo> const ,smart_ptr_raw<Expression> const ))>::size, UINT64_C(0x1cbe4220792916dd), "canVisitExprTypeInfo", offsetof(soa::CollectAndReplaceIteratorFields,canVisitExprTypeInfo), 0 };
TypeInfo * __type_info__27c83f576817775a_arg_types_var_11128648322172781937[2] = { &__type_info__21586ce84f433a21, &__type_info__563543a880fdcea2 };
const char * __type_info__27c83f576817775a_arg_names_var_11128648322172781937[2] = { "self", "expr" };
VarInfo __struct_info__9a70e6afd95b0571_field_165 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__af63eb4c86020609, nullptr, (TypeInfo **)__type_info__27c83f576817775a_arg_types_var_11128648322172781937, __type_info__27c83f576817775a_arg_names_var_11128648322172781937, 2, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<ExprTypeInfo> const ))>::size, UINT64_C(0x27c83f576817775a), "preVisitExprTypeInfo", offsetof(soa::CollectAndReplaceIteratorFields,preVisitExprTypeInfo), 0 };
TypeInfo * __type_info__a48159ce47b981b2_arg_types_var_11128648322172781937[2] = { &__type_info__21586ce84f433a21, &__type_info__563543a880fdcea2 };
const char * __type_info__a48159ce47b981b2_arg_names_var_11128648322172781937[2] = { "self", "expr" };
VarInfo __struct_info__9a70e6afd95b0571_field_166 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__6636442e03391ebf, nullptr, (TypeInfo **)__type_info__a48159ce47b981b2_arg_types_var_11128648322172781937, __type_info__a48159ce47b981b2_arg_names_var_11128648322172781937, 2, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((smart_ptr_raw<Expression>,ast::AstVisitor,smart_ptr_raw<ExprTypeInfo> const ))>::size, UINT64_C(0xa48159ce47b981b2), "visitExprTypeInfo", offsetof(soa::CollectAndReplaceIteratorFields,visitExprTypeInfo), 0 };
TypeInfo * __type_info__145be27a5ca6ba4_arg_types_var_11128648322172781937[2] = { &__type_info__21586ce84f433a21, &__type_info__7d9fd489616ae8d };
const char * __type_info__145be27a5ca6ba4_arg_names_var_11128648322172781937[2] = { "self", "expr" };
VarInfo __struct_info__9a70e6afd95b0571_field_167 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__af63eb4c86020609, nullptr, (TypeInfo **)__type_info__145be27a5ca6ba4_arg_types_var_11128648322172781937, __type_info__145be27a5ca6ba4_arg_names_var_11128648322172781937, 2, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<ExprPtr2Ref> const ))>::size, UINT64_C(0x145be27a5ca6ba4), "preVisitExprPtr2Ref", offsetof(soa::CollectAndReplaceIteratorFields,preVisitExprPtr2Ref), 0 };
TypeInfo * __type_info__342f1abedb39c4ab_arg_types_var_11128648322172781937[2] = { &__type_info__21586ce84f433a21, &__type_info__7d9fd489616ae8d };
const char * __type_info__342f1abedb39c4ab_arg_names_var_11128648322172781937[2] = { "self", "expr" };
VarInfo __struct_info__9a70e6afd95b0571_field_168 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__6636442e03391ebf, nullptr, (TypeInfo **)__type_info__342f1abedb39c4ab_arg_types_var_11128648322172781937, __type_info__342f1abedb39c4ab_arg_names_var_11128648322172781937, 2, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((smart_ptr_raw<Expression>,ast::AstVisitor,smart_ptr_raw<ExprPtr2Ref> const ))>::size, UINT64_C(0x342f1abedb39c4ab), "visitExprPtr2Ref", offsetof(soa::CollectAndReplaceIteratorFields,visitExprPtr2Ref), 0 };
TypeInfo * __type_info__38b139fdb7772afd_arg_types_var_11128648322172781937[2] = { &__type_info__21586ce84f433a21, &__type_info__6ad276912e16c445 };
const char * __type_info__38b139fdb7772afd_arg_names_var_11128648322172781937[2] = { "self", "expr" };
VarInfo __struct_info__9a70e6afd95b0571_field_169 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__af63eb4c86020609, nullptr, (TypeInfo **)__type_info__38b139fdb7772afd_arg_types_var_11128648322172781937, __type_info__38b139fdb7772afd_arg_names_var_11128648322172781937, 2, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<ExprLabel> const ))>::size, UINT64_C(0x38b139fdb7772afd), "preVisitExprLabel", offsetof(soa::CollectAndReplaceIteratorFields,preVisitExprLabel), 0 };
TypeInfo * __type_info__f7a746b99b689dc5_arg_types_var_11128648322172781937[2] = { &__type_info__21586ce84f433a21, &__type_info__6ad276912e16c445 };
const char * __type_info__f7a746b99b689dc5_arg_names_var_11128648322172781937[2] = { "self", "expr" };
VarInfo __struct_info__9a70e6afd95b0571_field_170 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__6636442e03391ebf, nullptr, (TypeInfo **)__type_info__f7a746b99b689dc5_arg_types_var_11128648322172781937, __type_info__f7a746b99b689dc5_arg_names_var_11128648322172781937, 2, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((smart_ptr_raw<Expression>,ast::AstVisitor,smart_ptr_raw<ExprLabel> const ))>::size, UINT64_C(0xf7a746b99b689dc5), "visitExprLabel", offsetof(soa::CollectAndReplaceIteratorFields,visitExprLabel), 0 };
TypeInfo * __type_info__846730209efa6c3d_arg_types_var_11128648322172781937[2] = { &__type_info__21586ce84f433a21, &__type_info__41023c185ec41d2 };
const char * __type_info__846730209efa6c3d_arg_names_var_11128648322172781937[2] = { "self", "expr" };
VarInfo __struct_info__9a70e6afd95b0571_field_171 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__af63eb4c86020609, nullptr, (TypeInfo **)__type_info__846730209efa6c3d_arg_types_var_11128648322172781937, __type_info__846730209efa6c3d_arg_names_var_11128648322172781937, 2, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<ExprGoto> const ))>::size, UINT64_C(0x846730209efa6c3d), "preVisitExprGoto", offsetof(soa::CollectAndReplaceIteratorFields,preVisitExprGoto), 0 };
TypeInfo * __type_info__885f0ef5b8809cb6_arg_types_var_11128648322172781937[2] = { &__type_info__21586ce84f433a21, &__type_info__41023c185ec41d2 };
const char * __type_info__885f0ef5b8809cb6_arg_names_var_11128648322172781937[2] = { "self", "expr" };
VarInfo __struct_info__9a70e6afd95b0571_field_172 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__6636442e03391ebf, nullptr, (TypeInfo **)__type_info__885f0ef5b8809cb6_arg_types_var_11128648322172781937, __type_info__885f0ef5b8809cb6_arg_names_var_11128648322172781937, 2, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((smart_ptr_raw<Expression>,ast::AstVisitor,smart_ptr_raw<ExprGoto> const ))>::size, UINT64_C(0x885f0ef5b8809cb6), "visitExprGoto", offsetof(soa::CollectAndReplaceIteratorFields,visitExprGoto), 0 };
TypeInfo * __type_info__2a72f152c0798e5e_arg_types_var_11128648322172781937[2] = { &__type_info__21586ce84f433a21, &__type_info__bba83b75d4855b7e };
const char * __type_info__2a72f152c0798e5e_arg_names_var_11128648322172781937[2] = { "self", "expr" };
VarInfo __struct_info__9a70e6afd95b0571_field_173 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__af63eb4c86020609, nullptr, (TypeInfo **)__type_info__2a72f152c0798e5e_arg_types_var_11128648322172781937, __type_info__2a72f152c0798e5e_arg_names_var_11128648322172781937, 2, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<ExprRef2Value> const ))>::size, UINT64_C(0x2a72f152c0798e5e), "preVisitExprRef2Value", offsetof(soa::CollectAndReplaceIteratorFields,preVisitExprRef2Value), 0 };
TypeInfo * __type_info__1d56b96cd0a31a22_arg_types_var_11128648322172781937[2] = { &__type_info__21586ce84f433a21, &__type_info__bba83b75d4855b7e };
const char * __type_info__1d56b96cd0a31a22_arg_names_var_11128648322172781937[2] = { "self", "expr" };
VarInfo __struct_info__9a70e6afd95b0571_field_174 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__6636442e03391ebf, nullptr, (TypeInfo **)__type_info__1d56b96cd0a31a22_arg_types_var_11128648322172781937, __type_info__1d56b96cd0a31a22_arg_names_var_11128648322172781937, 2, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((smart_ptr_raw<Expression>,ast::AstVisitor,smart_ptr_raw<ExprRef2Value> const ))>::size, UINT64_C(0x1d56b96cd0a31a22), "visitExprRef2Value", offsetof(soa::CollectAndReplaceIteratorFields,visitExprRef2Value), 0 };
TypeInfo * __type_info__23bdf6dc3a14e310_arg_types_var_11128648322172781937[2] = { &__type_info__21586ce84f433a21, &__type_info__1151bc4127672205 };
const char * __type_info__23bdf6dc3a14e310_arg_names_var_11128648322172781937[2] = { "self", "expr" };
VarInfo __struct_info__9a70e6afd95b0571_field_175 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__af63eb4c86020609, nullptr, (TypeInfo **)__type_info__23bdf6dc3a14e310_arg_types_var_11128648322172781937, __type_info__23bdf6dc3a14e310_arg_names_var_11128648322172781937, 2, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<ExprRef2Ptr> const ))>::size, UINT64_C(0x23bdf6dc3a14e310), "preVisitExprRef2Ptr", offsetof(soa::CollectAndReplaceIteratorFields,preVisitExprRef2Ptr), 0 };
TypeInfo * __type_info__f700ffddc487028b_arg_types_var_11128648322172781937[2] = { &__type_info__21586ce84f433a21, &__type_info__1151bc4127672205 };
const char * __type_info__f700ffddc487028b_arg_names_var_11128648322172781937[2] = { "self", "expr" };
VarInfo __struct_info__9a70e6afd95b0571_field_176 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__6636442e03391ebf, nullptr, (TypeInfo **)__type_info__f700ffddc487028b_arg_types_var_11128648322172781937, __type_info__f700ffddc487028b_arg_names_var_11128648322172781937, 2, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((smart_ptr_raw<Expression>,ast::AstVisitor,smart_ptr_raw<ExprRef2Ptr> const ))>::size, UINT64_C(0xf700ffddc487028b), "visitExprRef2Ptr", offsetof(soa::CollectAndReplaceIteratorFields,visitExprRef2Ptr), 0 };
TypeInfo * __type_info__8e76351644848af9_arg_types_var_11128648322172781937[2] = { &__type_info__21586ce84f433a21, &__type_info__c2f4bc15903e1610 };
const char * __type_info__8e76351644848af9_arg_names_var_11128648322172781937[2] = { "self", "expr" };
VarInfo __struct_info__9a70e6afd95b0571_field_177 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__af63eb4c86020609, nullptr, (TypeInfo **)__type_info__8e76351644848af9_arg_types_var_11128648322172781937, __type_info__8e76351644848af9_arg_names_var_11128648322172781937, 2, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<ExprAddr> const ))>::size, UINT64_C(0x8e76351644848af9), "preVisitExprAddr", offsetof(soa::CollectAndReplaceIteratorFields,preVisitExprAddr), 0 };
TypeInfo * __type_info__a05a0af5cd043198_arg_types_var_11128648322172781937[2] = { &__type_info__21586ce84f433a21, &__type_info__c2f4bc15903e1610 };
const char * __type_info__a05a0af5cd043198_arg_names_var_11128648322172781937[2] = { "self", "expr" };
VarInfo __struct_info__9a70e6afd95b0571_field_178 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__6636442e03391ebf, nullptr, (TypeInfo **)__type_info__a05a0af5cd043198_arg_types_var_11128648322172781937, __type_info__a05a0af5cd043198_arg_names_var_11128648322172781937, 2, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((smart_ptr_raw<Expression>,ast::AstVisitor,smart_ptr_raw<ExprAddr> const ))>::size, UINT64_C(0xa05a0af5cd043198), "visitExprAddr", offsetof(soa::CollectAndReplaceIteratorFields,visitExprAddr), 0 };
TypeInfo * __type_info__2a0e6f03caa374d5_arg_types_var_11128648322172781937[2] = { &__type_info__21586ce84f433a21, &__type_info__d551858bc6d43037 };
const char * __type_info__2a0e6f03caa374d5_arg_names_var_11128648322172781937[2] = { "self", "expr" };
VarInfo __struct_info__9a70e6afd95b0571_field_179 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__af63eb4c86020609, nullptr, (TypeInfo **)__type_info__2a0e6f03caa374d5_arg_types_var_11128648322172781937, __type_info__2a0e6f03caa374d5_arg_names_var_11128648322172781937, 2, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<ExprAssert> const ))>::size, UINT64_C(0x2a0e6f03caa374d5), "preVisitExprAssert", offsetof(soa::CollectAndReplaceIteratorFields,preVisitExprAssert), 0 };
TypeInfo * __type_info__3a919376443642ed_arg_types_var_11128648322172781937[2] = { &__type_info__21586ce84f433a21, &__type_info__d551858bc6d43037 };
const char * __type_info__3a919376443642ed_arg_names_var_11128648322172781937[2] = { "self", "expr" };
VarInfo __struct_info__9a70e6afd95b0571_field_180 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__6636442e03391ebf, nullptr, (TypeInfo **)__type_info__3a919376443642ed_arg_types_var_11128648322172781937, __type_info__3a919376443642ed_arg_names_var_11128648322172781937, 2, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((smart_ptr_raw<Expression>,ast::AstVisitor,smart_ptr_raw<ExprAssert> const ))>::size, UINT64_C(0x3a919376443642ed), "visitExprAssert", offsetof(soa::CollectAndReplaceIteratorFields,visitExprAssert), 0 };
TypeInfo * __type_info__2cbf753431d7218c_arg_types_var_11128648322172781937[2] = { &__type_info__21586ce84f433a21, &__type_info__74372feec5a81686 };
const char * __type_info__2cbf753431d7218c_arg_names_var_11128648322172781937[2] = { "self", "expr" };
VarInfo __struct_info__9a70e6afd95b0571_field_181 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__af63eb4c86020609, nullptr, (TypeInfo **)__type_info__2cbf753431d7218c_arg_types_var_11128648322172781937, __type_info__2cbf753431d7218c_arg_names_var_11128648322172781937, 2, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<ExprStaticAssert> const ))>::size, UINT64_C(0x2cbf753431d7218c), "preVisitExprStaticAssert", offsetof(soa::CollectAndReplaceIteratorFields,preVisitExprStaticAssert), 0 };
TypeInfo * __type_info__53109ea51ee04886_arg_types_var_11128648322172781937[2] = { &__type_info__21586ce84f433a21, &__type_info__74372feec5a81686 };
const char * __type_info__53109ea51ee04886_arg_names_var_11128648322172781937[2] = { "self", "expr" };
VarInfo __struct_info__9a70e6afd95b0571_field_182 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__6636442e03391ebf, nullptr, (TypeInfo **)__type_info__53109ea51ee04886_arg_types_var_11128648322172781937, __type_info__53109ea51ee04886_arg_names_var_11128648322172781937, 2, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((smart_ptr_raw<Expression>,ast::AstVisitor,smart_ptr_raw<ExprStaticAssert> const ))>::size, UINT64_C(0x53109ea51ee04886), "visitExprStaticAssert", offsetof(soa::CollectAndReplaceIteratorFields,visitExprStaticAssert), 0 };
TypeInfo * __type_info__8d1a4966ce98ac8e_arg_types_var_11128648322172781937[2] = { &__type_info__21586ce84f433a21, &__type_info__9dfe8a83730428c8 };
const char * __type_info__8d1a4966ce98ac8e_arg_names_var_11128648322172781937[2] = { "self", "expr" };
VarInfo __struct_info__9a70e6afd95b0571_field_183 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__af63eb4c86020609, nullptr, (TypeInfo **)__type_info__8d1a4966ce98ac8e_arg_types_var_11128648322172781937, __type_info__8d1a4966ce98ac8e_arg_names_var_11128648322172781937, 2, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<ExprQuote> const ))>::size, UINT64_C(0x8d1a4966ce98ac8e), "preVisitExprQuote", offsetof(soa::CollectAndReplaceIteratorFields,preVisitExprQuote), 0 };
TypeInfo * __type_info__f4e0c56cf7753e4_arg_types_var_11128648322172781937[2] = { &__type_info__21586ce84f433a21, &__type_info__9dfe8a83730428c8 };
const char * __type_info__f4e0c56cf7753e4_arg_names_var_11128648322172781937[2] = { "self", "expr" };
VarInfo __struct_info__9a70e6afd95b0571_field_184 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__6636442e03391ebf, nullptr, (TypeInfo **)__type_info__f4e0c56cf7753e4_arg_types_var_11128648322172781937, __type_info__f4e0c56cf7753e4_arg_names_var_11128648322172781937, 2, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((smart_ptr_raw<Expression>,ast::AstVisitor,smart_ptr_raw<ExprQuote> const ))>::size, UINT64_C(0xf4e0c56cf7753e4), "visitExprQuote", offsetof(soa::CollectAndReplaceIteratorFields,visitExprQuote), 0 };
TypeInfo * __type_info__10f34a2721b188d1_arg_types_var_11128648322172781937[2] = { &__type_info__21586ce84f433a21, &__type_info__c84cf5ded2cd1cd8 };
const char * __type_info__10f34a2721b188d1_arg_names_var_11128648322172781937[2] = { "self", "expr" };
VarInfo __struct_info__9a70e6afd95b0571_field_185 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__af63eb4c86020609, nullptr, (TypeInfo **)__type_info__10f34a2721b188d1_arg_types_var_11128648322172781937, __type_info__10f34a2721b188d1_arg_names_var_11128648322172781937, 2, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<ExprDebug> const ))>::size, UINT64_C(0x10f34a2721b188d1), "preVisitExprDebug", offsetof(soa::CollectAndReplaceIteratorFields,preVisitExprDebug), 0 };
TypeInfo * __type_info__fd74f3a77a74312c_arg_types_var_11128648322172781937[2] = { &__type_info__21586ce84f433a21, &__type_info__c84cf5ded2cd1cd8 };
const char * __type_info__fd74f3a77a74312c_arg_names_var_11128648322172781937[2] = { "self", "expr" };
VarInfo __struct_info__9a70e6afd95b0571_field_186 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__6636442e03391ebf, nullptr, (TypeInfo **)__type_info__fd74f3a77a74312c_arg_types_var_11128648322172781937, __type_info__fd74f3a77a74312c_arg_names_var_11128648322172781937, 2, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((smart_ptr_raw<Expression>,ast::AstVisitor,smart_ptr_raw<ExprDebug> const ))>::size, UINT64_C(0xfd74f3a77a74312c), "visitExprDebug", offsetof(soa::CollectAndReplaceIteratorFields,visitExprDebug), 0 };
TypeInfo * __type_info__370de50761e751e3_arg_types_var_11128648322172781937[2] = { &__type_info__21586ce84f433a21, &__type_info__c3c8c780df6c5865 };
const char * __type_info__370de50761e751e3_arg_names_var_11128648322172781937[2] = { "self", "expr" };
VarInfo __struct_info__9a70e6afd95b0571_field_187 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__af63eb4c86020609, nullptr, (TypeInfo **)__type_info__370de50761e751e3_arg_types_var_11128648322172781937, __type_info__370de50761e751e3_arg_names_var_11128648322172781937, 2, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<ExprInvoke> const ))>::size, UINT64_C(0x370de50761e751e3), "preVisitExprInvoke", offsetof(soa::CollectAndReplaceIteratorFields,preVisitExprInvoke), 0 };
TypeInfo * __type_info__d278e28ef6c5c687_arg_types_var_11128648322172781937[2] = { &__type_info__21586ce84f433a21, &__type_info__c3c8c780df6c5865 };
const char * __type_info__d278e28ef6c5c687_arg_names_var_11128648322172781937[2] = { "self", "expr" };
VarInfo __struct_info__9a70e6afd95b0571_field_188 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__6636442e03391ebf, nullptr, (TypeInfo **)__type_info__d278e28ef6c5c687_arg_types_var_11128648322172781937, __type_info__d278e28ef6c5c687_arg_names_var_11128648322172781937, 2, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((smart_ptr_raw<Expression>,ast::AstVisitor,smart_ptr_raw<ExprInvoke> const ))>::size, UINT64_C(0xd278e28ef6c5c687), "visitExprInvoke", offsetof(soa::CollectAndReplaceIteratorFields,visitExprInvoke), 0 };
TypeInfo * __type_info__d63e3c2b472f6afc_arg_types_var_11128648322172781937[2] = { &__type_info__21586ce84f433a21, &__type_info__e672712e93e236ba };
const char * __type_info__d63e3c2b472f6afc_arg_names_var_11128648322172781937[2] = { "self", "expr" };
VarInfo __struct_info__9a70e6afd95b0571_field_189 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__af63eb4c86020609, nullptr, (TypeInfo **)__type_info__d63e3c2b472f6afc_arg_types_var_11128648322172781937, __type_info__d63e3c2b472f6afc_arg_names_var_11128648322172781937, 2, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<ExprErase> const ))>::size, UINT64_C(0xd63e3c2b472f6afc), "preVisitExprErase", offsetof(soa::CollectAndReplaceIteratorFields,preVisitExprErase), 0 };
TypeInfo * __type_info__c7b3ec7a44b67de2_arg_types_var_11128648322172781937[2] = { &__type_info__21586ce84f433a21, &__type_info__e672712e93e236ba };
const char * __type_info__c7b3ec7a44b67de2_arg_names_var_11128648322172781937[2] = { "self", "expr" };
VarInfo __struct_info__9a70e6afd95b0571_field_190 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__6636442e03391ebf, nullptr, (TypeInfo **)__type_info__c7b3ec7a44b67de2_arg_types_var_11128648322172781937, __type_info__c7b3ec7a44b67de2_arg_names_var_11128648322172781937, 2, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((smart_ptr_raw<Expression>,ast::AstVisitor,smart_ptr_raw<ExprErase> const ))>::size, UINT64_C(0xc7b3ec7a44b67de2), "visitExprErase", offsetof(soa::CollectAndReplaceIteratorFields,visitExprErase), 0 };
TypeInfo * __type_info__7d1619dd42554020_arg_types_var_11128648322172781937[2] = { &__type_info__21586ce84f433a21, &__type_info__9c37565e66334661 };
const char * __type_info__7d1619dd42554020_arg_names_var_11128648322172781937[2] = { "self", "expr" };
VarInfo __struct_info__9a70e6afd95b0571_field_191 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__af63eb4c86020609, nullptr, (TypeInfo **)__type_info__7d1619dd42554020_arg_types_var_11128648322172781937, __type_info__7d1619dd42554020_arg_names_var_11128648322172781937, 2, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<ExprSetInsert> const ))>::size, UINT64_C(0x7d1619dd42554020), "preVisitExprSetInsert", offsetof(soa::CollectAndReplaceIteratorFields,preVisitExprSetInsert), 0 };
TypeInfo * __type_info__24887958bbe4c4c5_arg_types_var_11128648322172781937[2] = { &__type_info__21586ce84f433a21, &__type_info__9c37565e66334661 };
const char * __type_info__24887958bbe4c4c5_arg_names_var_11128648322172781937[2] = { "self", "expr" };
VarInfo __struct_info__9a70e6afd95b0571_field_192 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__6636442e03391ebf, nullptr, (TypeInfo **)__type_info__24887958bbe4c4c5_arg_types_var_11128648322172781937, __type_info__24887958bbe4c4c5_arg_names_var_11128648322172781937, 2, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((smart_ptr_raw<Expression>,ast::AstVisitor,smart_ptr_raw<ExprSetInsert> const ))>::size, UINT64_C(0x24887958bbe4c4c5), "visitExprSetInsert", offsetof(soa::CollectAndReplaceIteratorFields,visitExprSetInsert), 0 };
TypeInfo * __type_info__8734491d22dac2c2_arg_types_var_11128648322172781937[2] = { &__type_info__21586ce84f433a21, &__type_info__ee83d76e6f9a3c81 };
const char * __type_info__8734491d22dac2c2_arg_names_var_11128648322172781937[2] = { "self", "expr" };
VarInfo __struct_info__9a70e6afd95b0571_field_193 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__af63eb4c86020609, nullptr, (TypeInfo **)__type_info__8734491d22dac2c2_arg_types_var_11128648322172781937, __type_info__8734491d22dac2c2_arg_names_var_11128648322172781937, 2, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<ExprFind> const ))>::size, UINT64_C(0x8734491d22dac2c2), "preVisitExprFind", offsetof(soa::CollectAndReplaceIteratorFields,preVisitExprFind), 0 };
TypeInfo * __type_info__8f6726f5beaa2855_arg_types_var_11128648322172781937[2] = { &__type_info__21586ce84f433a21, &__type_info__ee83d76e6f9a3c81 };
const char * __type_info__8f6726f5beaa2855_arg_names_var_11128648322172781937[2] = { "self", "expr" };
VarInfo __struct_info__9a70e6afd95b0571_field_194 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__6636442e03391ebf, nullptr, (TypeInfo **)__type_info__8f6726f5beaa2855_arg_types_var_11128648322172781937, __type_info__8f6726f5beaa2855_arg_names_var_11128648322172781937, 2, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((smart_ptr_raw<Expression>,ast::AstVisitor,smart_ptr_raw<ExprFind> const ))>::size, UINT64_C(0x8f6726f5beaa2855), "visitExprFind", offsetof(soa::CollectAndReplaceIteratorFields,visitExprFind), 0 };
TypeInfo * __type_info__faed89e74efe7344_arg_types_var_11128648322172781937[2] = { &__type_info__21586ce84f433a21, &__type_info__7f9fc2c601e28df1 };
const char * __type_info__faed89e74efe7344_arg_names_var_11128648322172781937[2] = { "self", "expr" };
VarInfo __struct_info__9a70e6afd95b0571_field_195 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__af63eb4c86020609, nullptr, (TypeInfo **)__type_info__faed89e74efe7344_arg_types_var_11128648322172781937, __type_info__faed89e74efe7344_arg_names_var_11128648322172781937, 2, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<ExprKeyExists> const ))>::size, UINT64_C(0xfaed89e74efe7344), "preVisitExprKeyExists", offsetof(soa::CollectAndReplaceIteratorFields,preVisitExprKeyExists), 0 };
TypeInfo * __type_info__86d47ccb4ecd69b9_arg_types_var_11128648322172781937[2] = { &__type_info__21586ce84f433a21, &__type_info__7f9fc2c601e28df1 };
const char * __type_info__86d47ccb4ecd69b9_arg_names_var_11128648322172781937[2] = { "self", "expr" };
VarInfo __struct_info__9a70e6afd95b0571_field_196 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__6636442e03391ebf, nullptr, (TypeInfo **)__type_info__86d47ccb4ecd69b9_arg_types_var_11128648322172781937, __type_info__86d47ccb4ecd69b9_arg_names_var_11128648322172781937, 2, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((smart_ptr_raw<Expression>,ast::AstVisitor,smart_ptr_raw<ExprKeyExists> const ))>::size, UINT64_C(0x86d47ccb4ecd69b9), "visitExprKeyExists", offsetof(soa::CollectAndReplaceIteratorFields,visitExprKeyExists), 0 };
TypeInfo * __type_info__2ea65eb342ffd5a5_arg_types_var_11128648322172781937[2] = { &__type_info__21586ce84f433a21, &__type_info__6bdd529063b3dbeb };
const char * __type_info__2ea65eb342ffd5a5_arg_names_var_11128648322172781937[2] = { "self", "expr" };
VarInfo __struct_info__9a70e6afd95b0571_field_197 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__af63eb4c86020609, nullptr, (TypeInfo **)__type_info__2ea65eb342ffd5a5_arg_types_var_11128648322172781937, __type_info__2ea65eb342ffd5a5_arg_names_var_11128648322172781937, 2, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<ExprAscend> const ))>::size, UINT64_C(0x2ea65eb342ffd5a5), "preVisitExprAscend", offsetof(soa::CollectAndReplaceIteratorFields,preVisitExprAscend), 0 };
TypeInfo * __type_info__3a92977644662f49_arg_types_var_11128648322172781937[2] = { &__type_info__21586ce84f433a21, &__type_info__6bdd529063b3dbeb };
const char * __type_info__3a92977644662f49_arg_names_var_11128648322172781937[2] = { "self", "expr" };
VarInfo __struct_info__9a70e6afd95b0571_field_198 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__6636442e03391ebf, nullptr, (TypeInfo **)__type_info__3a92977644662f49_arg_types_var_11128648322172781937, __type_info__3a92977644662f49_arg_names_var_11128648322172781937, 2, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((smart_ptr_raw<Expression>,ast::AstVisitor,smart_ptr_raw<ExprAscend> const ))>::size, UINT64_C(0x3a92977644662f49), "visitExprAscend", offsetof(soa::CollectAndReplaceIteratorFields,visitExprAscend), 0 };
TypeInfo * __type_info__f438490ec477807a_arg_types_var_11128648322172781937[2] = { &__type_info__21586ce84f433a21, &__type_info__bc5b346893db35b };
const char * __type_info__f438490ec477807a_arg_names_var_11128648322172781937[2] = { "self", "expr" };
VarInfo __struct_info__9a70e6afd95b0571_field_199 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__af63eb4c86020609, nullptr, (TypeInfo **)__type_info__f438490ec477807a_arg_types_var_11128648322172781937, __type_info__f438490ec477807a_arg_names_var_11128648322172781937, 2, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<ExprCast> const ))>::size, UINT64_C(0xf438490ec477807a), "preVisitExprCast", offsetof(soa::CollectAndReplaceIteratorFields,preVisitExprCast), 0 };
TypeInfo * __type_info__aa5909f5d5513b93_arg_types_var_11128648322172781937[2] = { &__type_info__21586ce84f433a21, &__type_info__bc5b346893db35b };
const char * __type_info__aa5909f5d5513b93_arg_names_var_11128648322172781937[2] = { "self", "expr" };
VarInfo __struct_info__9a70e6afd95b0571_field_200 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__6636442e03391ebf, nullptr, (TypeInfo **)__type_info__aa5909f5d5513b93_arg_types_var_11128648322172781937, __type_info__aa5909f5d5513b93_arg_names_var_11128648322172781937, 2, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((smart_ptr_raw<Expression>,ast::AstVisitor,smart_ptr_raw<ExprCast> const ))>::size, UINT64_C(0xaa5909f5d5513b93), "visitExprCast", offsetof(soa::CollectAndReplaceIteratorFields,visitExprCast), 0 };
TypeInfo * __type_info__42c1603b6c94395a_arg_types_var_11128648322172781937[3] = { &__type_info__21586ce84f433a21, &__type_info__120723ecb6510065, &__type_info__98064c57b4bcca5a };
const char * __type_info__42c1603b6c94395a_arg_names_var_11128648322172781937[3] = { "self", "del", "expr" };
VarInfo __struct_info__9a70e6afd95b0571_field_201 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__af63eb4c86020609, nullptr, (TypeInfo **)__type_info__42c1603b6c94395a_arg_types_var_11128648322172781937, __type_info__42c1603b6c94395a_arg_names_var_11128648322172781937, 3, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<ExprDelete> const ,smart_ptr_raw<Expression> const ))>::size, UINT64_C(0x42c1603b6c94395a), "preVisitExprDeleteSizeExpression", offsetof(soa::CollectAndReplaceIteratorFields,preVisitExprDeleteSizeExpression), 0 };
TypeInfo * __type_info__7f629486178ea4ec_arg_types_var_11128648322172781937[2] = { &__type_info__21586ce84f433a21, &__type_info__120723ecb6510065 };
const char * __type_info__7f629486178ea4ec_arg_names_var_11128648322172781937[2] = { "self", "expr" };
VarInfo __struct_info__9a70e6afd95b0571_field_202 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__af63eb4c86020609, nullptr, (TypeInfo **)__type_info__7f629486178ea4ec_arg_types_var_11128648322172781937, __type_info__7f629486178ea4ec_arg_names_var_11128648322172781937, 2, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<ExprDelete> const ))>::size, UINT64_C(0x7f629486178ea4ec), "preVisitExprDelete", offsetof(soa::CollectAndReplaceIteratorFields,preVisitExprDelete), 0 };
TypeInfo * __type_info__c76212a74c9c409b_arg_types_var_11128648322172781937[2] = { &__type_info__21586ce84f433a21, &__type_info__120723ecb6510065 };
const char * __type_info__c76212a74c9c409b_arg_names_var_11128648322172781937[2] = { "self", "expr" };
VarInfo __struct_info__9a70e6afd95b0571_field_203 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__6636442e03391ebf, nullptr, (TypeInfo **)__type_info__c76212a74c9c409b_arg_types_var_11128648322172781937, __type_info__c76212a74c9c409b_arg_names_var_11128648322172781937, 2, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((smart_ptr_raw<Expression>,ast::AstVisitor,smart_ptr_raw<ExprDelete> const ))>::size, UINT64_C(0xc76212a74c9c409b), "visitExprDelete", offsetof(soa::CollectAndReplaceIteratorFields,visitExprDelete), 0 };
TypeInfo * __type_info__365cf791046b2eea_arg_types_var_11128648322172781937[2] = { &__type_info__21586ce84f433a21, &__type_info__f5c1d1c41d788f7 };
const char * __type_info__365cf791046b2eea_arg_names_var_11128648322172781937[2] = { "self", "expr" };
VarInfo __struct_info__9a70e6afd95b0571_field_204 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__af63eb4c86020609, nullptr, (TypeInfo **)__type_info__365cf791046b2eea_arg_types_var_11128648322172781937, __type_info__365cf791046b2eea_arg_names_var_11128648322172781937, 2, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<ExprVar> const ))>::size, UINT64_C(0x365cf791046b2eea), "preVisitExprVar", offsetof(soa::CollectAndReplaceIteratorFields,preVisitExprVar), 0 };
TypeInfo * __type_info__aab11af5d5c15761_arg_types_var_11128648322172781937[2] = { &__type_info__21586ce84f433a21, &__type_info__f5c1d1c41d788f7 };
const char * __type_info__aab11af5d5c15761_arg_names_var_11128648322172781937[2] = { "self", "expr" };
VarInfo __struct_info__9a70e6afd95b0571_field_205 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__6636442e03391ebf, nullptr, (TypeInfo **)__type_info__aab11af5d5c15761_arg_types_var_11128648322172781937, __type_info__aab11af5d5c15761_arg_names_var_11128648322172781937, 2, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((smart_ptr_raw<Expression>,ast::AstVisitor,smart_ptr_raw<ExprVar> const ))>::size, UINT64_C(0xaab11af5d5c15761), "visitExprVar", offsetof(soa::CollectAndReplaceIteratorFields,visitExprVar), 0 };
TypeInfo * __type_info__3d59f7910a84c3ea_arg_types_var_11128648322172781937[2] = { &__type_info__21586ce84f433a21, &__type_info__631c9e15ba7d5036 };
const char * __type_info__3d59f7910a84c3ea_arg_names_var_11128648322172781937[2] = { "self", "expr" };
VarInfo __struct_info__9a70e6afd95b0571_field_206 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__af63eb4c86020609, nullptr, (TypeInfo **)__type_info__3d59f7910a84c3ea_arg_types_var_11128648322172781937, __type_info__3d59f7910a84c3ea_arg_names_var_11128648322172781937, 2, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<ExprTag> const ))>::size, UINT64_C(0x3d59f7910a84c3ea), "preVisitExprTag", offsetof(soa::CollectAndReplaceIteratorFields,preVisitExprTag), 0 };
TypeInfo * __type_info__597a678c9b9b8df7_arg_types_var_11128648322172781937[3] = { &__type_info__21586ce84f433a21, &__type_info__631c9e15ba7d5036, &__type_info__98064c57b4bcca5a };
const char * __type_info__597a678c9b9b8df7_arg_names_var_11128648322172781937[3] = { "self", "expr", "value" };
VarInfo __struct_info__9a70e6afd95b0571_field_207 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__af63eb4c86020609, nullptr, (TypeInfo **)__type_info__597a678c9b9b8df7_arg_types_var_11128648322172781937, __type_info__597a678c9b9b8df7_arg_names_var_11128648322172781937, 3, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<ExprTag> const ,smart_ptr_raw<Expression> const ))>::size, UINT64_C(0x597a678c9b9b8df7), "preVisitExprTagValue", offsetof(soa::CollectAndReplaceIteratorFields,preVisitExprTagValue), 0 };
TypeInfo * __type_info__aaaafdf5d5bcba6c_arg_types_var_11128648322172781937[2] = { &__type_info__21586ce84f433a21, &__type_info__631c9e15ba7d5036 };
const char * __type_info__aaaafdf5d5bcba6c_arg_names_var_11128648322172781937[2] = { "self", "expr" };
VarInfo __struct_info__9a70e6afd95b0571_field_208 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__6636442e03391ebf, nullptr, (TypeInfo **)__type_info__aaaafdf5d5bcba6c_arg_types_var_11128648322172781937, __type_info__aaaafdf5d5bcba6c_arg_names_var_11128648322172781937, 2, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((smart_ptr_raw<Expression>,ast::AstVisitor,smart_ptr_raw<ExprTag> const ))>::size, UINT64_C(0xaaaafdf5d5bcba6c), "visitExprTag", offsetof(soa::CollectAndReplaceIteratorFields,visitExprTag), 0 };
TypeInfo * __type_info__acb2511d42cd275a_arg_types_var_11128648322172781937[2] = { &__type_info__21586ce84f433a21, &__type_info__849126a4e3db3268 };
const char * __type_info__acb2511d42cd275a_arg_names_var_11128648322172781937[2] = { "self", "expr" };
VarInfo __struct_info__9a70e6afd95b0571_field_209 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__af63eb4c86020609, nullptr, (TypeInfo **)__type_info__acb2511d42cd275a_arg_types_var_11128648322172781937, __type_info__acb2511d42cd275a_arg_names_var_11128648322172781937, 2, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<ExprField> const ))>::size, UINT64_C(0xacb2511d42cd275a), "preVisitExprField", offsetof(soa::CollectAndReplaceIteratorFields,preVisitExprField), 0 };
TypeInfo * __type_info__3b506292e4177310_arg_types_var_11128648322172781937[2] = { &__type_info__21586ce84f433a21, &__type_info__849126a4e3db3268 };
const char * __type_info__3b506292e4177310_arg_names_var_11128648322172781937[2] = { "self", "expr" };
VarInfo __struct_info__9a70e6afd95b0571_field_210 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__6636442e03391ebf, nullptr, (TypeInfo **)__type_info__3b506292e4177310_arg_types_var_11128648322172781937, __type_info__3b506292e4177310_arg_names_var_11128648322172781937, 2, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((smart_ptr_raw<Expression>,ast::AstVisitor,smart_ptr_raw<ExprField> const ))>::size, UINT64_C(0x3b506292e4177310), "visitExprField", offsetof(soa::CollectAndReplaceIteratorFields,visitExprField), 0 };
TypeInfo * __type_info__93646c3271e1e430_arg_types_var_11128648322172781937[2] = { &__type_info__21586ce84f433a21, &__type_info__a7adf4b0a367d897 };
const char * __type_info__93646c3271e1e430_arg_names_var_11128648322172781937[2] = { "self", "expr" };
VarInfo __struct_info__9a70e6afd95b0571_field_211 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__af63eb4c86020609, nullptr, (TypeInfo **)__type_info__93646c3271e1e430_arg_types_var_11128648322172781937, __type_info__93646c3271e1e430_arg_names_var_11128648322172781937, 2, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<ExprSafeField> const ))>::size, UINT64_C(0x93646c3271e1e430), "preVisitExprSafeField", offsetof(soa::CollectAndReplaceIteratorFields,preVisitExprSafeField), 0 };
TypeInfo * __type_info__502a5e580a66b45f_arg_types_var_11128648322172781937[2] = { &__type_info__21586ce84f433a21, &__type_info__a7adf4b0a367d897 };
const char * __type_info__502a5e580a66b45f_arg_names_var_11128648322172781937[2] = { "self", "expr" };
VarInfo __struct_info__9a70e6afd95b0571_field_212 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__6636442e03391ebf, nullptr, (TypeInfo **)__type_info__502a5e580a66b45f_arg_types_var_11128648322172781937, __type_info__502a5e580a66b45f_arg_names_var_11128648322172781937, 2, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((smart_ptr_raw<Expression>,ast::AstVisitor,smart_ptr_raw<ExprSafeField> const ))>::size, UINT64_C(0x502a5e580a66b45f), "visitExprSafeField", offsetof(soa::CollectAndReplaceIteratorFields,visitExprSafeField), 0 };
TypeInfo * __type_info__651358111ee6854e_arg_types_var_11128648322172781937[2] = { &__type_info__21586ce84f433a21, &__type_info__6bb94e24ea14ce9a };
const char * __type_info__651358111ee6854e_arg_names_var_11128648322172781937[2] = { "self", "expr" };
VarInfo __struct_info__9a70e6afd95b0571_field_213 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__af63eb4c86020609, nullptr, (TypeInfo **)__type_info__651358111ee6854e_arg_types_var_11128648322172781937, __type_info__651358111ee6854e_arg_names_var_11128648322172781937, 2, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<ExprSwizzle> const ))>::size, UINT64_C(0x651358111ee6854e), "preVisitExprSwizzle", offsetof(soa::CollectAndReplaceIteratorFields,preVisitExprSwizzle), 0 };
TypeInfo * __type_info__a1883820b5d0cb9c_arg_types_var_11128648322172781937[2] = { &__type_info__21586ce84f433a21, &__type_info__6bb94e24ea14ce9a };
const char * __type_info__a1883820b5d0cb9c_arg_names_var_11128648322172781937[2] = { "self", "expr" };
VarInfo __struct_info__9a70e6afd95b0571_field_214 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__6636442e03391ebf, nullptr, (TypeInfo **)__type_info__a1883820b5d0cb9c_arg_types_var_11128648322172781937, __type_info__a1883820b5d0cb9c_arg_names_var_11128648322172781937, 2, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((smart_ptr_raw<Expression>,ast::AstVisitor,smart_ptr_raw<ExprSwizzle> const ))>::size, UINT64_C(0xa1883820b5d0cb9c), "visitExprSwizzle", offsetof(soa::CollectAndReplaceIteratorFields,visitExprSwizzle), 0 };
TypeInfo * __type_info__4decd3d4848a0dd4_arg_types_var_11128648322172781937[2] = { &__type_info__21586ce84f433a21, &__type_info__837624c70f8f1fa1 };
const char * __type_info__4decd3d4848a0dd4_arg_names_var_11128648322172781937[2] = { "self", "expr" };
VarInfo __struct_info__9a70e6afd95b0571_field_215 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__af63eb4c86020609, nullptr, (TypeInfo **)__type_info__4decd3d4848a0dd4_arg_types_var_11128648322172781937, __type_info__4decd3d4848a0dd4_arg_names_var_11128648322172781937, 2, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<ExprIsVariant> const ))>::size, UINT64_C(0x4decd3d4848a0dd4), "preVisitExprIsVariant", offsetof(soa::CollectAndReplaceIteratorFields,preVisitExprIsVariant), 0 };
TypeInfo * __type_info__b986bd63181b15f9_arg_types_var_11128648322172781937[2] = { &__type_info__21586ce84f433a21, &__type_info__837624c70f8f1fa1 };
const char * __type_info__b986bd63181b15f9_arg_names_var_11128648322172781937[2] = { "self", "expr" };
VarInfo __struct_info__9a70e6afd95b0571_field_216 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__6636442e03391ebf, nullptr, (TypeInfo **)__type_info__b986bd63181b15f9_arg_types_var_11128648322172781937, __type_info__b986bd63181b15f9_arg_names_var_11128648322172781937, 2, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((smart_ptr_raw<Expression>,ast::AstVisitor,smart_ptr_raw<ExprIsVariant> const ))>::size, UINT64_C(0xb986bd63181b15f9), "visitExprIsVariant", offsetof(soa::CollectAndReplaceIteratorFields,visitExprIsVariant), 0 };
TypeInfo * __type_info__4867314de259a5d4_arg_types_var_11128648322172781937[2] = { &__type_info__21586ce84f433a21, &__type_info__229aabe2f8bef1d9 };
const char * __type_info__4867314de259a5d4_arg_names_var_11128648322172781937[2] = { "self", "expr" };
VarInfo __struct_info__9a70e6afd95b0571_field_217 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__af63eb4c86020609, nullptr, (TypeInfo **)__type_info__4867314de259a5d4_arg_types_var_11128648322172781937, __type_info__4867314de259a5d4_arg_names_var_11128648322172781937, 2, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<ExprAsVariant> const ))>::size, UINT64_C(0x4867314de259a5d4), "preVisitExprAsVariant", offsetof(soa::CollectAndReplaceIteratorFields,preVisitExprAsVariant), 0 };
TypeInfo * __type_info__413c5f0643e13ce1_arg_types_var_11128648322172781937[2] = { &__type_info__21586ce84f433a21, &__type_info__229aabe2f8bef1d9 };
const char * __type_info__413c5f0643e13ce1_arg_names_var_11128648322172781937[2] = { "self", "expr" };
VarInfo __struct_info__9a70e6afd95b0571_field_218 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__6636442e03391ebf, nullptr, (TypeInfo **)__type_info__413c5f0643e13ce1_arg_types_var_11128648322172781937, __type_info__413c5f0643e13ce1_arg_names_var_11128648322172781937, 2, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((smart_ptr_raw<Expression>,ast::AstVisitor,smart_ptr_raw<ExprAsVariant> const ))>::size, UINT64_C(0x413c5f0643e13ce1), "visitExprAsVariant", offsetof(soa::CollectAndReplaceIteratorFields,visitExprAsVariant), 0 };
TypeInfo * __type_info__a6b8d2bfcced0db2_arg_types_var_11128648322172781937[2] = { &__type_info__21586ce84f433a21, &__type_info__45d77ccae958b9de };
const char * __type_info__a6b8d2bfcced0db2_arg_names_var_11128648322172781937[2] = { "self", "expr" };
VarInfo __struct_info__9a70e6afd95b0571_field_219 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__af63eb4c86020609, nullptr, (TypeInfo **)__type_info__a6b8d2bfcced0db2_arg_types_var_11128648322172781937, __type_info__a6b8d2bfcced0db2_arg_names_var_11128648322172781937, 2, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<ExprSafeAsVariant> const ))>::size, UINT64_C(0xa6b8d2bfcced0db2), "preVisitExprSafeAsVariant", offsetof(soa::CollectAndReplaceIteratorFields,preVisitExprSafeAsVariant), 0 };
TypeInfo * __type_info__93c0fa74b053a3e6_arg_types_var_11128648322172781937[2] = { &__type_info__21586ce84f433a21, &__type_info__45d77ccae958b9de };
const char * __type_info__93c0fa74b053a3e6_arg_names_var_11128648322172781937[2] = { "self", "expr" };
VarInfo __struct_info__9a70e6afd95b0571_field_220 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__6636442e03391ebf, nullptr, (TypeInfo **)__type_info__93c0fa74b053a3e6_arg_types_var_11128648322172781937, __type_info__93c0fa74b053a3e6_arg_names_var_11128648322172781937, 2, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((smart_ptr_raw<Expression>,ast::AstVisitor,smart_ptr_raw<ExprSafeAsVariant> const ))>::size, UINT64_C(0x93c0fa74b053a3e6), "visitExprSafeAsVariant", offsetof(soa::CollectAndReplaceIteratorFields,visitExprSafeAsVariant), 0 };
TypeInfo * __type_info__e8140890c1cdefcd_arg_types_var_11128648322172781937[2] = { &__type_info__21586ce84f433a21, &__type_info__c7c0e4fba3dcbfcf };
const char * __type_info__e8140890c1cdefcd_arg_names_var_11128648322172781937[2] = { "self", "expr" };
VarInfo __struct_info__9a70e6afd95b0571_field_221 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__af63eb4c86020609, nullptr, (TypeInfo **)__type_info__e8140890c1cdefcd_arg_types_var_11128648322172781937, __type_info__e8140890c1cdefcd_arg_names_var_11128648322172781937, 2, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<ExprOp1> const ))>::size, UINT64_C(0xe8140890c1cdefcd), "preVisitExprOp1", offsetof(soa::CollectAndReplaceIteratorFields,preVisitExprOp1), 0 };
TypeInfo * __type_info__7798e3f5aa58955d_arg_types_var_11128648322172781937[2] = { &__type_info__21586ce84f433a21, &__type_info__c7c0e4fba3dcbfcf };
const char * __type_info__7798e3f5aa58955d_arg_names_var_11128648322172781937[2] = { "self", "expr" };
VarInfo __struct_info__9a70e6afd95b0571_field_222 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__6636442e03391ebf, nullptr, (TypeInfo **)__type_info__7798e3f5aa58955d_arg_types_var_11128648322172781937, __type_info__7798e3f5aa58955d_arg_names_var_11128648322172781937, 2, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((smart_ptr_raw<Expression>,ast::AstVisitor,smart_ptr_raw<ExprOp1> const ))>::size, UINT64_C(0x7798e3f5aa58955d), "visitExprOp1", offsetof(soa::CollectAndReplaceIteratorFields,visitExprOp1), 0 };
TypeInfo * __type_info__2ea01333cb9db78d_arg_types_var_11128648322172781937[2] = { &__type_info__21586ce84f433a21, &__type_info__1a5b7f11cf3fb5b5 };
const char * __type_info__2ea01333cb9db78d_arg_names_var_11128648322172781937[2] = { "self", "expr" };
VarInfo __struct_info__9a70e6afd95b0571_field_223 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__af63eb4c86020609, nullptr, (TypeInfo **)__type_info__2ea01333cb9db78d_arg_types_var_11128648322172781937, __type_info__2ea01333cb9db78d_arg_names_var_11128648322172781937, 2, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<ExprReturn> const ))>::size, UINT64_C(0x2ea01333cb9db78d), "preVisitExprReturn", offsetof(soa::CollectAndReplaceIteratorFields,preVisitExprReturn), 0 };
TypeInfo * __type_info__f7f386a7402bf833_arg_types_var_11128648322172781937[2] = { &__type_info__21586ce84f433a21, &__type_info__1a5b7f11cf3fb5b5 };
const char * __type_info__f7f386a7402bf833_arg_names_var_11128648322172781937[2] = { "self", "expr" };
VarInfo __struct_info__9a70e6afd95b0571_field_224 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__6636442e03391ebf, nullptr, (TypeInfo **)__type_info__f7f386a7402bf833_arg_types_var_11128648322172781937, __type_info__f7f386a7402bf833_arg_names_var_11128648322172781937, 2, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((smart_ptr_raw<Expression>,ast::AstVisitor,smart_ptr_raw<ExprReturn> const ))>::size, UINT64_C(0xf7f386a7402bf833), "visitExprReturn", offsetof(soa::CollectAndReplaceIteratorFields,visitExprReturn), 0 };
TypeInfo * __type_info__62f3513fab3d4a5a_arg_types_var_11128648322172781937[2] = { &__type_info__21586ce84f433a21, &__type_info__60501e84f49c29e1 };
const char * __type_info__62f3513fab3d4a5a_arg_names_var_11128648322172781937[2] = { "self", "expr" };
VarInfo __struct_info__9a70e6afd95b0571_field_225 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__af63eb4c86020609, nullptr, (TypeInfo **)__type_info__62f3513fab3d4a5a_arg_types_var_11128648322172781937, __type_info__62f3513fab3d4a5a_arg_names_var_11128648322172781937, 2, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<ExprYield> const ))>::size, UINT64_C(0x62f3513fab3d4a5a), "preVisitExprYield", offsetof(soa::CollectAndReplaceIteratorFields,preVisitExprYield), 0 };
TypeInfo * __type_info__7bf9499204334125_arg_types_var_11128648322172781937[2] = { &__type_info__21586ce84f433a21, &__type_info__60501e84f49c29e1 };
const char * __type_info__7bf9499204334125_arg_names_var_11128648322172781937[2] = { "self", "expr" };
VarInfo __struct_info__9a70e6afd95b0571_field_226 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__6636442e03391ebf, nullptr, (TypeInfo **)__type_info__7bf9499204334125_arg_types_var_11128648322172781937, __type_info__7bf9499204334125_arg_names_var_11128648322172781937, 2, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((smart_ptr_raw<Expression>,ast::AstVisitor,smart_ptr_raw<ExprYield> const ))>::size, UINT64_C(0x7bf9499204334125), "visitExprYield", offsetof(soa::CollectAndReplaceIteratorFields,visitExprYield), 0 };
TypeInfo * __type_info__6f012e0848275032_arg_types_var_11128648322172781937[2] = { &__type_info__21586ce84f433a21, &__type_info__5047b5dbcc2127cd };
const char * __type_info__6f012e0848275032_arg_names_var_11128648322172781937[2] = { "self", "expr" };
VarInfo __struct_info__9a70e6afd95b0571_field_227 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__af63eb4c86020609, nullptr, (TypeInfo **)__type_info__6f012e0848275032_arg_types_var_11128648322172781937, __type_info__6f012e0848275032_arg_names_var_11128648322172781937, 2, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<ExprBreak> const ))>::size, UINT64_C(0x6f012e0848275032), "preVisitExprBreak", offsetof(soa::CollectAndReplaceIteratorFields,preVisitExprBreak), 0 };
TypeInfo * __type_info__5b2fed79d758d0f1_arg_types_var_11128648322172781937[2] = { &__type_info__21586ce84f433a21, &__type_info__5047b5dbcc2127cd };
const char * __type_info__5b2fed79d758d0f1_arg_names_var_11128648322172781937[2] = { "self", "expr" };
VarInfo __struct_info__9a70e6afd95b0571_field_228 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__6636442e03391ebf, nullptr, (TypeInfo **)__type_info__5b2fed79d758d0f1_arg_types_var_11128648322172781937, __type_info__5b2fed79d758d0f1_arg_names_var_11128648322172781937, 2, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((smart_ptr_raw<Expression>,ast::AstVisitor,smart_ptr_raw<ExprBreak> const ))>::size, UINT64_C(0x5b2fed79d758d0f1), "visitExprBreak", offsetof(soa::CollectAndReplaceIteratorFields,visitExprBreak), 0 };
TypeInfo * __type_info__398b4bb06ca43c29_arg_types_var_11128648322172781937[2] = { &__type_info__21586ce84f433a21, &__type_info__5b91ede0508873e };
const char * __type_info__398b4bb06ca43c29_arg_names_var_11128648322172781937[2] = { "self", "expr" };
VarInfo __struct_info__9a70e6afd95b0571_field_229 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__af63eb4c86020609, nullptr, (TypeInfo **)__type_info__398b4bb06ca43c29_arg_types_var_11128648322172781937, __type_info__398b4bb06ca43c29_arg_names_var_11128648322172781937, 2, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<ExprContinue> const ))>::size, UINT64_C(0x398b4bb06ca43c29), "preVisitExprContinue", offsetof(soa::CollectAndReplaceIteratorFields,preVisitExprContinue), 0 };
TypeInfo * __type_info__a5c9b7a434a89ff6_arg_types_var_11128648322172781937[2] = { &__type_info__21586ce84f433a21, &__type_info__5b91ede0508873e };
const char * __type_info__a5c9b7a434a89ff6_arg_names_var_11128648322172781937[2] = { "self", "expr" };
VarInfo __struct_info__9a70e6afd95b0571_field_230 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__6636442e03391ebf, nullptr, (TypeInfo **)__type_info__a5c9b7a434a89ff6_arg_types_var_11128648322172781937, __type_info__a5c9b7a434a89ff6_arg_names_var_11128648322172781937, 2, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((smart_ptr_raw<Expression>,ast::AstVisitor,smart_ptr_raw<ExprContinue> const ))>::size, UINT64_C(0xa5c9b7a434a89ff6), "visitExprContinue", offsetof(soa::CollectAndReplaceIteratorFields,visitExprContinue), 0 };
TypeInfo * __type_info__bef5101cdf9a5dbf_arg_types_var_11128648322172781937[2] = { &__type_info__21586ce84f433a21, &__type_info__e0b574ceb6c8c70f };
const char * __type_info__bef5101cdf9a5dbf_arg_names_var_11128648322172781937[2] = { "self", "expr" };
VarInfo __struct_info__9a70e6afd95b0571_field_231 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__af63df4c8601f1a5, nullptr, (TypeInfo **)__type_info__bef5101cdf9a5dbf_arg_types_var_11128648322172781937, __type_info__bef5101cdf9a5dbf_arg_names_var_11128648322172781937, 2, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((bool,ast::AstVisitor,smart_ptr_raw<ExprMakeBlock> const ))>::size, UINT64_C(0xbef5101cdf9a5dbf), "canVisitMakeBlockBody", offsetof(soa::CollectAndReplaceIteratorFields,canVisitMakeBlockBody), 0 };
TypeInfo * __type_info__468810d49a88a600_arg_types_var_11128648322172781937[2] = { &__type_info__21586ce84f433a21, &__type_info__e0b574ceb6c8c70f };
const char * __type_info__468810d49a88a600_arg_names_var_11128648322172781937[2] = { "self", "expr" };
VarInfo __struct_info__9a70e6afd95b0571_field_232 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__af63eb4c86020609, nullptr, (TypeInfo **)__type_info__468810d49a88a600_arg_types_var_11128648322172781937, __type_info__468810d49a88a600_arg_names_var_11128648322172781937, 2, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<ExprMakeBlock> const ))>::size, UINT64_C(0x468810d49a88a600), "preVisitExprMakeBlock", offsetof(soa::CollectAndReplaceIteratorFields,preVisitExprMakeBlock), 0 };
TypeInfo * __type_info__11d5116a3cf8263_arg_types_var_11128648322172781937[2] = { &__type_info__21586ce84f433a21, &__type_info__e0b574ceb6c8c70f };
const char * __type_info__11d5116a3cf8263_arg_names_var_11128648322172781937[2] = { "self", "expr" };
VarInfo __struct_info__9a70e6afd95b0571_field_233 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__6636442e03391ebf, nullptr, (TypeInfo **)__type_info__11d5116a3cf8263_arg_types_var_11128648322172781937, __type_info__11d5116a3cf8263_arg_names_var_11128648322172781937, 2, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((smart_ptr_raw<Expression>,ast::AstVisitor,smart_ptr_raw<ExprMakeBlock> const ))>::size, UINT64_C(0x11d5116a3cf8263), "visitExprMakeBlock", offsetof(soa::CollectAndReplaceIteratorFields,visitExprMakeBlock), 0 };
TypeInfo * __type_info__7769f10ab0f45217_arg_types_var_11128648322172781937[2] = { &__type_info__21586ce84f433a21, &__type_info__6c1a6b092c78a88 };
const char * __type_info__7769f10ab0f45217_arg_names_var_11128648322172781937[2] = { "self", "expr" };
VarInfo __struct_info__9a70e6afd95b0571_field_234 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__af63eb4c86020609, nullptr, (TypeInfo **)__type_info__7769f10ab0f45217_arg_types_var_11128648322172781937, __type_info__7769f10ab0f45217_arg_names_var_11128648322172781937, 2, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<ExprMakeGenerator> const ))>::size, UINT64_C(0x7769f10ab0f45217), "preVisitExprMakeGenerator", offsetof(soa::CollectAndReplaceIteratorFields,preVisitExprMakeGenerator), 0 };
TypeInfo * __type_info__5b3e0a7e5766c128_arg_types_var_11128648322172781937[2] = { &__type_info__21586ce84f433a21, &__type_info__6c1a6b092c78a88 };
const char * __type_info__5b3e0a7e5766c128_arg_names_var_11128648322172781937[2] = { "self", "expr" };
VarInfo __struct_info__9a70e6afd95b0571_field_235 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__6636442e03391ebf, nullptr, (TypeInfo **)__type_info__5b3e0a7e5766c128_arg_types_var_11128648322172781937, __type_info__5b3e0a7e5766c128_arg_names_var_11128648322172781937, 2, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((smart_ptr_raw<Expression>,ast::AstVisitor,smart_ptr_raw<ExprMakeGenerator> const ))>::size, UINT64_C(0x5b3e0a7e5766c128), "visitExprMakeGenerator", offsetof(soa::CollectAndReplaceIteratorFields,visitExprMakeGenerator), 0 };
TypeInfo * __type_info__4aad7ed7221edc9a_arg_types_var_11128648322172781937[2] = { &__type_info__21586ce84f433a21, &__type_info__f66cc598ea369f61 };
const char * __type_info__4aad7ed7221edc9a_arg_names_var_11128648322172781937[2] = { "self", "expr" };
VarInfo __struct_info__9a70e6afd95b0571_field_236 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__af63eb4c86020609, nullptr, (TypeInfo **)__type_info__4aad7ed7221edc9a_arg_types_var_11128648322172781937, __type_info__4aad7ed7221edc9a_arg_names_var_11128648322172781937, 2, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<ExprMemZero> const ))>::size, UINT64_C(0x4aad7ed7221edc9a), "preVisitExprMemZero", offsetof(soa::CollectAndReplaceIteratorFields,preVisitExprMemZero), 0 };
TypeInfo * __type_info__300bd8c1ea475063_arg_types_var_11128648322172781937[2] = { &__type_info__21586ce84f433a21, &__type_info__f66cc598ea369f61 };
const char * __type_info__300bd8c1ea475063_arg_names_var_11128648322172781937[2] = { "self", "expr" };
VarInfo __struct_info__9a70e6afd95b0571_field_237 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__6636442e03391ebf, nullptr, (TypeInfo **)__type_info__300bd8c1ea475063_arg_types_var_11128648322172781937, __type_info__300bd8c1ea475063_arg_names_var_11128648322172781937, 2, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((smart_ptr_raw<Expression>,ast::AstVisitor,smart_ptr_raw<ExprMemZero> const ))>::size, UINT64_C(0x300bd8c1ea475063), "visitExprMemZero", offsetof(soa::CollectAndReplaceIteratorFields,visitExprMemZero), 0 };
TypeInfo * __type_info__ce33340ea3c80d09_arg_types_var_11128648322172781937[2] = { &__type_info__21586ce84f433a21, &__type_info__118bfa23ce6c000c };
const char * __type_info__ce33340ea3c80d09_arg_names_var_11128648322172781937[2] = { "self", "expr" };
VarInfo __struct_info__9a70e6afd95b0571_field_238 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__af63eb4c86020609, nullptr, (TypeInfo **)__type_info__ce33340ea3c80d09_arg_types_var_11128648322172781937, __type_info__ce33340ea3c80d09_arg_names_var_11128648322172781937, 2, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<ExprConst> const ))>::size, UINT64_C(0xce33340ea3c80d09), "preVisitExprConst", offsetof(soa::CollectAndReplaceIteratorFields,preVisitExprConst), 0 };
TypeInfo * __type_info__24aecd88667f9400_arg_types_var_11128648322172781937[2] = { &__type_info__21586ce84f433a21, &__type_info__118bfa23ce6c000c };
const char * __type_info__24aecd88667f9400_arg_names_var_11128648322172781937[2] = { "self", "expr" };
VarInfo __struct_info__9a70e6afd95b0571_field_239 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__6636442e03391ebf, nullptr, (TypeInfo **)__type_info__24aecd88667f9400_arg_types_var_11128648322172781937, __type_info__24aecd88667f9400_arg_names_var_11128648322172781937, 2, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((smart_ptr_raw<Expression>,ast::AstVisitor,smart_ptr_raw<ExprConst> const ))>::size, UINT64_C(0x24aecd88667f9400), "visitExprConst", offsetof(soa::CollectAndReplaceIteratorFields,visitExprConst), 0 };
TypeInfo * __type_info__21de1d23f167720b_arg_types_var_11128648322172781937[2] = { &__type_info__21586ce84f433a21, &__type_info__a45346c81e6a9b80 };
const char * __type_info__21de1d23f167720b_arg_names_var_11128648322172781937[2] = { "self", "expr" };
VarInfo __struct_info__9a70e6afd95b0571_field_240 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__af63eb4c86020609, nullptr, (TypeInfo **)__type_info__21de1d23f167720b_arg_types_var_11128648322172781937, __type_info__21de1d23f167720b_arg_names_var_11128648322172781937, 2, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<ExprConstPtr> const ))>::size, UINT64_C(0x21de1d23f167720b), "preVisitExprConstPtr", offsetof(soa::CollectAndReplaceIteratorFields,preVisitExprConstPtr), 0 };
TypeInfo * __type_info__77edb2c6b5b5e71c_arg_types_var_11128648322172781937[2] = { &__type_info__21586ce84f433a21, &__type_info__a45346c81e6a9b80 };
const char * __type_info__77edb2c6b5b5e71c_arg_names_var_11128648322172781937[2] = { "self", "expr" };
VarInfo __struct_info__9a70e6afd95b0571_field_241 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__6636442e03391ebf, nullptr, (TypeInfo **)__type_info__77edb2c6b5b5e71c_arg_types_var_11128648322172781937, __type_info__77edb2c6b5b5e71c_arg_names_var_11128648322172781937, 2, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((smart_ptr_raw<Expression>,ast::AstVisitor,smart_ptr_raw<ExprConstPtr> const ))>::size, UINT64_C(0x77edb2c6b5b5e71c), "visitExprConstPtr", offsetof(soa::CollectAndReplaceIteratorFields,visitExprConstPtr), 0 };
TypeInfo * __type_info__a8fb09c47774e0ca_arg_types_var_11128648322172781937[2] = { &__type_info__21586ce84f433a21, &__type_info__b6d18d4b3fadccd4 };
const char * __type_info__a8fb09c47774e0ca_arg_names_var_11128648322172781937[2] = { "self", "expr" };
VarInfo __struct_info__9a70e6afd95b0571_field_242 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__af63eb4c86020609, nullptr, (TypeInfo **)__type_info__a8fb09c47774e0ca_arg_types_var_11128648322172781937, __type_info__a8fb09c47774e0ca_arg_names_var_11128648322172781937, 2, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<ExprConstEnumeration> const ))>::size, UINT64_C(0xa8fb09c47774e0ca), "preVisitExprConstEnumeration", offsetof(soa::CollectAndReplaceIteratorFields,preVisitExprConstEnumeration), 0 };
TypeInfo * __type_info__45e41b3eae084074_arg_types_var_11128648322172781937[2] = { &__type_info__21586ce84f433a21, &__type_info__b6d18d4b3fadccd4 };
const char * __type_info__45e41b3eae084074_arg_names_var_11128648322172781937[2] = { "self", "expr" };
VarInfo __struct_info__9a70e6afd95b0571_field_243 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__6636442e03391ebf, nullptr, (TypeInfo **)__type_info__45e41b3eae084074_arg_types_var_11128648322172781937, __type_info__45e41b3eae084074_arg_names_var_11128648322172781937, 2, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((smart_ptr_raw<Expression>,ast::AstVisitor,smart_ptr_raw<ExprConstEnumeration> const ))>::size, UINT64_C(0x45e41b3eae084074), "visitExprConstEnumeration", offsetof(soa::CollectAndReplaceIteratorFields,visitExprConstEnumeration), 0 };
TypeInfo * __type_info__b002ed49a7402cca_arg_types_var_11128648322172781937[2] = { &__type_info__21586ce84f433a21, &__type_info__9c92a72bb3a64bfa };
const char * __type_info__b002ed49a7402cca_arg_names_var_11128648322172781937[2] = { "self", "expr" };
VarInfo __struct_info__9a70e6afd95b0571_field_244 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__af63eb4c86020609, nullptr, (TypeInfo **)__type_info__b002ed49a7402cca_arg_types_var_11128648322172781937, __type_info__b002ed49a7402cca_arg_names_var_11128648322172781937, 2, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<ExprConstBitfield> const ))>::size, UINT64_C(0xb002ed49a7402cca), "preVisitExprConstBitfield", offsetof(soa::CollectAndReplaceIteratorFields,preVisitExprConstBitfield), 0 };
TypeInfo * __type_info__f6b2a899679828d6_arg_types_var_11128648322172781937[2] = { &__type_info__21586ce84f433a21, &__type_info__9c92a72bb3a64bfa };
const char * __type_info__f6b2a899679828d6_arg_names_var_11128648322172781937[2] = { "self", "expr" };
VarInfo __struct_info__9a70e6afd95b0571_field_245 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__6636442e03391ebf, nullptr, (TypeInfo **)__type_info__f6b2a899679828d6_arg_types_var_11128648322172781937, __type_info__f6b2a899679828d6_arg_names_var_11128648322172781937, 2, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((smart_ptr_raw<Expression>,ast::AstVisitor,smart_ptr_raw<ExprConstBitfield> const ))>::size, UINT64_C(0xf6b2a899679828d6), "visitExprConstBitfield", offsetof(soa::CollectAndReplaceIteratorFields,visitExprConstBitfield), 0 };
TypeInfo * __type_info__d6bd0d23b18bf8dc_arg_types_var_11128648322172781937[2] = { &__type_info__21586ce84f433a21, &__type_info__4a0758d80e688a0e };
const char * __type_info__d6bd0d23b18bf8dc_arg_names_var_11128648322172781937[2] = { "self", "expr" };
VarInfo __struct_info__9a70e6afd95b0571_field_246 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__af63eb4c86020609, nullptr, (TypeInfo **)__type_info__d6bd0d23b18bf8dc_arg_types_var_11128648322172781937, __type_info__d6bd0d23b18bf8dc_arg_names_var_11128648322172781937, 2, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<ExprConstInt8> const ))>::size, UINT64_C(0xd6bd0d23b18bf8dc), "preVisitExprConstInt8", offsetof(soa::CollectAndReplaceIteratorFields,preVisitExprConstInt8), 0 };
TypeInfo * __type_info__aca867d16912c5d6_arg_types_var_11128648322172781937[2] = { &__type_info__21586ce84f433a21, &__type_info__4a0758d80e688a0e };
const char * __type_info__aca867d16912c5d6_arg_names_var_11128648322172781937[2] = { "self", "expr" };
VarInfo __struct_info__9a70e6afd95b0571_field_247 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__6636442e03391ebf, nullptr, (TypeInfo **)__type_info__aca867d16912c5d6_arg_types_var_11128648322172781937, __type_info__aca867d16912c5d6_arg_names_var_11128648322172781937, 2, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((smart_ptr_raw<Expression>,ast::AstVisitor,smart_ptr_raw<ExprConstInt8> const ))>::size, UINT64_C(0xaca867d16912c5d6), "visitExprConstInt8", offsetof(soa::CollectAndReplaceIteratorFields,visitExprConstInt8), 0 };
TypeInfo * __type_info__50a03da696db849e_arg_types_var_11128648322172781937[2] = { &__type_info__21586ce84f433a21, &__type_info__87ae85b131d91f57 };
const char * __type_info__50a03da696db849e_arg_names_var_11128648322172781937[2] = { "self", "expr" };
VarInfo __struct_info__9a70e6afd95b0571_field_248 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__af63eb4c86020609, nullptr, (TypeInfo **)__type_info__50a03da696db849e_arg_types_var_11128648322172781937, __type_info__50a03da696db849e_arg_names_var_11128648322172781937, 2, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<ExprConstInt16> const ))>::size, UINT64_C(0x50a03da696db849e), "preVisitExprConstInt16", offsetof(soa::CollectAndReplaceIteratorFields,preVisitExprConstInt16), 0 };
TypeInfo * __type_info__acba70d169316b21_arg_types_var_11128648322172781937[2] = { &__type_info__21586ce84f433a21, &__type_info__87ae85b131d91f57 };
const char * __type_info__acba70d169316b21_arg_names_var_11128648322172781937[2] = { "self", "expr" };
VarInfo __struct_info__9a70e6afd95b0571_field_249 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__6636442e03391ebf, nullptr, (TypeInfo **)__type_info__acba70d169316b21_arg_types_var_11128648322172781937, __type_info__acba70d169316b21_arg_names_var_11128648322172781937, 2, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((smart_ptr_raw<Expression>,ast::AstVisitor,smart_ptr_raw<ExprConstInt16> const ))>::size, UINT64_C(0xacba70d169316b21), "visitExprConstInt16", offsetof(soa::CollectAndReplaceIteratorFields,visitExprConstInt16), 0 };
TypeInfo * __type_info__4d3a3ba693f85838_arg_types_var_11128648322172781937[2] = { &__type_info__21586ce84f433a21, &__type_info__773524bb75b61932 };
const char * __type_info__4d3a3ba693f85838_arg_names_var_11128648322172781937[2] = { "self", "expr" };
VarInfo __struct_info__9a70e6afd95b0571_field_250 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__af63eb4c86020609, nullptr, (TypeInfo **)__type_info__4d3a3ba693f85838_arg_types_var_11128648322172781937, __type_info__4d3a3ba693f85838_arg_names_var_11128648322172781937, 2, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<ExprConstInt64> const ))>::size, UINT64_C(0x4d3a3ba693f85838), "preVisitExprConstInt64", offsetof(soa::CollectAndReplaceIteratorFields,preVisitExprConstInt64), 0 };
TypeInfo * __type_info__acbc71d16934d2d4_arg_types_var_11128648322172781937[2] = { &__type_info__21586ce84f433a21, &__type_info__773524bb75b61932 };
const char * __type_info__acbc71d16934d2d4_arg_names_var_11128648322172781937[2] = { "self", "expr" };
VarInfo __struct_info__9a70e6afd95b0571_field_251 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__6636442e03391ebf, nullptr, (TypeInfo **)__type_info__acbc71d16934d2d4_arg_types_var_11128648322172781937, __type_info__acbc71d16934d2d4_arg_names_var_11128648322172781937, 2, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((smart_ptr_raw<Expression>,ast::AstVisitor,smart_ptr_raw<ExprConstInt64> const ))>::size, UINT64_C(0xacbc71d16934d2d4), "visitExprConstInt64", offsetof(soa::CollectAndReplaceIteratorFields,visitExprConstInt64), 0 };
TypeInfo * __type_info__d6c50d23b19990dc_arg_types_var_11128648322172781937[2] = { &__type_info__21586ce84f433a21, &__type_info__a28688c7ffe035ce };
const char * __type_info__d6c50d23b19990dc_arg_names_var_11128648322172781937[2] = { "self", "expr" };
VarInfo __struct_info__9a70e6afd95b0571_field_252 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__af63eb4c86020609, nullptr, (TypeInfo **)__type_info__d6c50d23b19990dc_arg_types_var_11128648322172781937, __type_info__d6c50d23b19990dc_arg_names_var_11128648322172781937, 2, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<ExprConstInt> const ))>::size, UINT64_C(0xd6c50d23b19990dc), "preVisitExprConstInt", offsetof(soa::CollectAndReplaceIteratorFields,preVisitExprConstInt), 0 };
TypeInfo * __type_info__95fdacc6cece9bea_arg_types_var_11128648322172781937[2] = { &__type_info__21586ce84f433a21, &__type_info__a28688c7ffe035ce };
const char * __type_info__95fdacc6cece9bea_arg_names_var_11128648322172781937[2] = { "self", "expr" };
VarInfo __struct_info__9a70e6afd95b0571_field_253 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__6636442e03391ebf, nullptr, (TypeInfo **)__type_info__95fdacc6cece9bea_arg_types_var_11128648322172781937, __type_info__95fdacc6cece9bea_arg_names_var_11128648322172781937, 2, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((smart_ptr_raw<Expression>,ast::AstVisitor,smart_ptr_raw<ExprConstInt> const ))>::size, UINT64_C(0x95fdacc6cece9bea), "visitExprConstInt", offsetof(soa::CollectAndReplaceIteratorFields,visitExprConstInt), 0 };
TypeInfo * __type_info__d6b70d23b181c6dc_arg_types_var_11128648322172781937[2] = { &__type_info__21586ce84f433a21, &__type_info__2d27aed7dd587c30 };
const char * __type_info__d6b70d23b181c6dc_arg_names_var_11128648322172781937[2] = { "self", "expr" };
VarInfo __struct_info__9a70e6afd95b0571_field_254 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__af63eb4c86020609, nullptr, (TypeInfo **)__type_info__d6b70d23b181c6dc_arg_types_var_11128648322172781937, __type_info__d6b70d23b181c6dc_arg_names_var_11128648322172781937, 2, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<ExprConstInt2> const ))>::size, UINT64_C(0xd6b70d23b181c6dc), "preVisitExprConstInt2", offsetof(soa::CollectAndReplaceIteratorFields,preVisitExprConstInt2), 0 };
TypeInfo * __type_info__aca86dd16912d008_arg_types_var_11128648322172781937[2] = { &__type_info__21586ce84f433a21, &__type_info__2d27aed7dd587c30 };
const char * __type_info__aca86dd16912d008_arg_names_var_11128648322172781937[2] = { "self", "expr" };
VarInfo __struct_info__9a70e6afd95b0571_field_255 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__6636442e03391ebf, nullptr, (TypeInfo **)__type_info__aca86dd16912d008_arg_types_var_11128648322172781937, __type_info__aca86dd16912d008_arg_names_var_11128648322172781937, 2, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((smart_ptr_raw<Expression>,ast::AstVisitor,smart_ptr_raw<ExprConstInt2> const ))>::size, UINT64_C(0xaca86dd16912d008), "visitExprConstInt2", offsetof(soa::CollectAndReplaceIteratorFields,visitExprConstInt2), 0 };
TypeInfo * __type_info__d6b60d23b18013dc_arg_types_var_11128648322172781937[2] = { &__type_info__21586ce84f433a21, &__type_info__31b7a5d7e3ad4eb7 };
const char * __type_info__d6b60d23b18013dc_arg_names_var_11128648322172781937[2] = { "self", "expr" };
VarInfo __struct_info__9a70e6afd95b0571_field_256 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__af63eb4c86020609, nullptr, (TypeInfo **)__type_info__d6b60d23b18013dc_arg_types_var_11128648322172781937, __type_info__d6b60d23b18013dc_arg_names_var_11128648322172781937, 2, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<ExprConstInt3> const ))>::size, UINT64_C(0xd6b60d23b18013dc), "preVisitExprConstInt3", offsetof(soa::CollectAndReplaceIteratorFields,preVisitExprConstInt3), 0 };
TypeInfo * __type_info__aca86ed16912d1bb_arg_types_var_11128648322172781937[2] = { &__type_info__21586ce84f433a21, &__type_info__31b7a5d7e3ad4eb7 };
const char * __type_info__aca86ed16912d1bb_arg_names_var_11128648322172781937[2] = { "self", "expr" };
VarInfo __struct_info__9a70e6afd95b0571_field_257 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__6636442e03391ebf, nullptr, (TypeInfo **)__type_info__aca86ed16912d1bb_arg_types_var_11128648322172781937, __type_info__aca86ed16912d1bb_arg_names_var_11128648322172781937, 2, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((smart_ptr_raw<Expression>,ast::AstVisitor,smart_ptr_raw<ExprConstInt3> const ))>::size, UINT64_C(0xaca86ed16912d1bb), "visitExprConstInt3", offsetof(soa::CollectAndReplaceIteratorFields,visitExprConstInt3), 0 };
TypeInfo * __type_info__d6b10d23b17794dc_arg_types_var_11128648322172781937[2] = { &__type_info__21586ce84f433a21, &__type_info__2914e4d7d4fafa72 };
const char * __type_info__d6b10d23b17794dc_arg_names_var_11128648322172781937[2] = { "self", "expr" };
VarInfo __struct_info__9a70e6afd95b0571_field_258 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__af63eb4c86020609, nullptr, (TypeInfo **)__type_info__d6b10d23b17794dc_arg_types_var_11128648322172781937, __type_info__d6b10d23b17794dc_arg_names_var_11128648322172781937, 2, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<ExprConstInt4> const ))>::size, UINT64_C(0xd6b10d23b17794dc), "preVisitExprConstInt4", offsetof(soa::CollectAndReplaceIteratorFields,preVisitExprConstInt4), 0 };
TypeInfo * __type_info__aca873d16912da3a_arg_types_var_11128648322172781937[2] = { &__type_info__21586ce84f433a21, &__type_info__2914e4d7d4fafa72 };
const char * __type_info__aca873d16912da3a_arg_names_var_11128648322172781937[2] = { "self", "expr" };
VarInfo __struct_info__9a70e6afd95b0571_field_259 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__6636442e03391ebf, nullptr, (TypeInfo **)__type_info__aca873d16912da3a_arg_types_var_11128648322172781937, __type_info__aca873d16912da3a_arg_names_var_11128648322172781937, 2, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((smart_ptr_raw<Expression>,ast::AstVisitor,smart_ptr_raw<ExprConstInt4> const ))>::size, UINT64_C(0xaca873d16912da3a), "visitExprConstInt4", offsetof(soa::CollectAndReplaceIteratorFields,visitExprConstInt4), 0 };
TypeInfo * __type_info__a793370fcf767742_arg_types_var_11128648322172781937[2] = { &__type_info__21586ce84f433a21, &__type_info__f6614284ea50cbe7 };
const char * __type_info__a793370fcf767742_arg_names_var_11128648322172781937[2] = { "self", "expr" };
VarInfo __struct_info__9a70e6afd95b0571_field_260 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__af63eb4c86020609, nullptr, (TypeInfo **)__type_info__a793370fcf767742_arg_types_var_11128648322172781937, __type_info__a793370fcf767742_arg_names_var_11128648322172781937, 2, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<ExprConstUInt8> const ))>::size, UINT64_C(0xa793370fcf767742), "preVisitExprConstUInt8", offsetof(soa::CollectAndReplaceIteratorFields,preVisitExprConstUInt8), 0 };
TypeInfo * __type_info__9c335987f2c50cd_arg_types_var_11128648322172781937[2] = { &__type_info__21586ce84f433a21, &__type_info__f6614284ea50cbe7 };
const char * __type_info__9c335987f2c50cd_arg_names_var_11128648322172781937[2] = { "self", "expr" };
VarInfo __struct_info__9a70e6afd95b0571_field_261 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__6636442e03391ebf, nullptr, (TypeInfo **)__type_info__9c335987f2c50cd_arg_types_var_11128648322172781937, __type_info__9c335987f2c50cd_arg_names_var_11128648322172781937, 2, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((smart_ptr_raw<Expression>,ast::AstVisitor,smart_ptr_raw<ExprConstUInt8> const ))>::size, UINT64_C(0x9c335987f2c50cd), "visitExprConstUInt8", offsetof(soa::CollectAndReplaceIteratorFields,visitExprConstUInt8), 0 };
TypeInfo * __type_info__a75d400fcf1ac48d_arg_types_var_11128648322172781937[2] = { &__type_info__21586ce84f433a21, &__type_info__f108ab47d962e793 };
const char * __type_info__a75d400fcf1ac48d_arg_names_var_11128648322172781937[2] = { "self", "expr" };
VarInfo __struct_info__9a70e6afd95b0571_field_262 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__af63eb4c86020609, nullptr, (TypeInfo **)__type_info__a75d400fcf1ac48d_arg_types_var_11128648322172781937, __type_info__a75d400fcf1ac48d_arg_names_var_11128648322172781937, 2, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<ExprConstUInt16> const ))>::size, UINT64_C(0xa75d400fcf1ac48d), "preVisitExprConstUInt16", offsetof(soa::CollectAndReplaceIteratorFields,preVisitExprConstUInt16), 0 };
TypeInfo * __type_info__dacf0d202c83b981_arg_types_var_11128648322172781937[2] = { &__type_info__21586ce84f433a21, &__type_info__f108ab47d962e793 };
const char * __type_info__dacf0d202c83b981_arg_names_var_11128648322172781937[2] = { "self", "expr" };
VarInfo __struct_info__9a70e6afd95b0571_field_263 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__6636442e03391ebf, nullptr, (TypeInfo **)__type_info__dacf0d202c83b981_arg_types_var_11128648322172781937, __type_info__dacf0d202c83b981_arg_names_var_11128648322172781937, 2, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((smart_ptr_raw<Expression>,ast::AstVisitor,smart_ptr_raw<ExprConstUInt16> const ))>::size, UINT64_C(0xdacf0d202c83b981), "visitExprConstUInt16", offsetof(soa::CollectAndReplaceIteratorFields,visitExprConstUInt16), 0 };
TypeInfo * __type_info__a75f390fcf1e1ea8_arg_types_var_11128648322172781937[2] = { &__type_info__21586ce84f433a21, &__type_info__63e1b8a29ad93469 };
const char * __type_info__a75f390fcf1e1ea8_arg_names_var_11128648322172781937[2] = { "self", "expr" };
VarInfo __struct_info__9a70e6afd95b0571_field_264 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__af63eb4c86020609, nullptr, (TypeInfo **)__type_info__a75f390fcf1e1ea8_arg_types_var_11128648322172781937, __type_info__a75f390fcf1e1ea8_arg_names_var_11128648322172781937, 2, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<ExprConstUInt64> const ))>::size, UINT64_C(0xa75f390fcf1e1ea8), "preVisitExprConstUInt64", offsetof(soa::CollectAndReplaceIteratorFields,preVisitExprConstUInt64), 0 };
TypeInfo * __type_info__e5010b20352d311b_arg_types_var_11128648322172781937[2] = { &__type_info__21586ce84f433a21, &__type_info__63e1b8a29ad93469 };
const char * __type_info__e5010b20352d311b_arg_names_var_11128648322172781937[2] = { "self", "expr" };
VarInfo __struct_info__9a70e6afd95b0571_field_265 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__6636442e03391ebf, nullptr, (TypeInfo **)__type_info__e5010b20352d311b_arg_types_var_11128648322172781937, __type_info__e5010b20352d311b_arg_names_var_11128648322172781937, 2, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((smart_ptr_raw<Expression>,ast::AstVisitor,smart_ptr_raw<ExprConstUInt64> const ))>::size, UINT64_C(0xe5010b20352d311b), "visitExprConstUInt64", offsetof(soa::CollectAndReplaceIteratorFields,visitExprConstUInt64), 0 };
TypeInfo * __type_info__6dfe272358c0b68e_arg_types_var_11128648322172781937[2] = { &__type_info__21586ce84f433a21, &__type_info__518dd4a2ad91defd };
const char * __type_info__6dfe272358c0b68e_arg_names_var_11128648322172781937[2] = { "self", "expr" };
VarInfo __struct_info__9a70e6afd95b0571_field_266 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__af63eb4c86020609, nullptr, (TypeInfo **)__type_info__6dfe272358c0b68e_arg_types_var_11128648322172781937, __type_info__6dfe272358c0b68e_arg_names_var_11128648322172781937, 2, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<ExprConstUInt> const ))>::size, UINT64_C(0x6dfe272358c0b68e), "preVisitExprConstUInt", offsetof(soa::CollectAndReplaceIteratorFields,preVisitExprConstUInt), 0 };
TypeInfo * __type_info__9bb35987f1eb8cd_arg_types_var_11128648322172781937[2] = { &__type_info__21586ce84f433a21, &__type_info__518dd4a2ad91defd };
const char * __type_info__9bb35987f1eb8cd_arg_names_var_11128648322172781937[2] = { "self", "expr" };
VarInfo __struct_info__9a70e6afd95b0571_field_267 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__6636442e03391ebf, nullptr, (TypeInfo **)__type_info__9bb35987f1eb8cd_arg_types_var_11128648322172781937, __type_info__9bb35987f1eb8cd_arg_names_var_11128648322172781937, 2, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((smart_ptr_raw<Expression>,ast::AstVisitor,smart_ptr_raw<ExprConstUInt> const ))>::size, UINT64_C(0x9bb35987f1eb8cd), "visitExprConstUInt", offsetof(soa::CollectAndReplaceIteratorFields,visitExprConstUInt), 0 };
TypeInfo * __type_info__a7933d0fcf768174_arg_types_var_11128648322172781937[2] = { &__type_info__21586ce84f433a21, &__type_info__514742689af99de7 };
const char * __type_info__a7933d0fcf768174_arg_names_var_11128648322172781937[2] = { "self", "expr" };
VarInfo __struct_info__9a70e6afd95b0571_field_268 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__af63eb4c86020609, nullptr, (TypeInfo **)__type_info__a7933d0fcf768174_arg_types_var_11128648322172781937, __type_info__a7933d0fcf768174_arg_names_var_11128648322172781937, 2, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<ExprConstUInt2> const ))>::size, UINT64_C(0xa7933d0fcf768174), "preVisitExprConstUInt2", offsetof(soa::CollectAndReplaceIteratorFields,preVisitExprConstUInt2), 0 };
TypeInfo * __type_info__9c935987f3682cd_arg_types_var_11128648322172781937[2] = { &__type_info__21586ce84f433a21, &__type_info__514742689af99de7 };
const char * __type_info__9c935987f3682cd_arg_names_var_11128648322172781937[2] = { "self", "expr" };
VarInfo __struct_info__9a70e6afd95b0571_field_269 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__6636442e03391ebf, nullptr, (TypeInfo **)__type_info__9c935987f3682cd_arg_types_var_11128648322172781937, __type_info__9c935987f3682cd_arg_names_var_11128648322172781937, 2, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((smart_ptr_raw<Expression>,ast::AstVisitor,smart_ptr_raw<ExprConstUInt2> const ))>::size, UINT64_C(0x9c935987f3682cd), "visitExprConstUInt2", offsetof(soa::CollectAndReplaceIteratorFields,visitExprConstUInt2), 0 };
TypeInfo * __type_info__a7933e0fcf768327_arg_types_var_11128648322172781937[2] = { &__type_info__21586ce84f433a21, &__type_info__563e42636db280e7 };
const char * __type_info__a7933e0fcf768327_arg_names_var_11128648322172781937[2] = { "self", "expr" };
VarInfo __struct_info__9a70e6afd95b0571_field_270 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__af63eb4c86020609, nullptr, (TypeInfo **)__type_info__a7933e0fcf768327_arg_types_var_11128648322172781937, __type_info__a7933e0fcf768327_arg_names_var_11128648322172781937, 2, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<ExprConstUInt3> const ))>::size, UINT64_C(0xa7933e0fcf768327), "preVisitExprConstUInt3", offsetof(soa::CollectAndReplaceIteratorFields,preVisitExprConstUInt3), 0 };
TypeInfo * __type_info__9c835987f34cfcd_arg_types_var_11128648322172781937[2] = { &__type_info__21586ce84f433a21, &__type_info__563e42636db280e7 };
const char * __type_info__9c835987f34cfcd_arg_names_var_11128648322172781937[2] = { "self", "expr" };
VarInfo __struct_info__9a70e6afd95b0571_field_271 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__6636442e03391ebf, nullptr, (TypeInfo **)__type_info__9c835987f34cfcd_arg_types_var_11128648322172781937, __type_info__9c835987f34cfcd_arg_names_var_11128648322172781937, 2, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((smart_ptr_raw<Expression>,ast::AstVisitor,smart_ptr_raw<ExprConstUInt3> const ))>::size, UINT64_C(0x9c835987f34cfcd), "visitExprConstUInt3", offsetof(soa::CollectAndReplaceIteratorFields,visitExprConstUInt3), 0 };
TypeInfo * __type_info__a7933b0fcf767e0e_arg_types_var_11128648322172781937[2] = { &__type_info__21586ce84f433a21, &__type_info__a17d42718ebadfe7 };
const char * __type_info__a7933b0fcf767e0e_arg_names_var_11128648322172781937[2] = { "self", "expr" };
VarInfo __struct_info__9a70e6afd95b0571_field_272 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__af63eb4c86020609, nullptr, (TypeInfo **)__type_info__a7933b0fcf767e0e_arg_types_var_11128648322172781937, __type_info__a7933b0fcf767e0e_arg_names_var_11128648322172781937, 2, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<ExprConstUInt4> const ))>::size, UINT64_C(0xa7933b0fcf767e0e), "preVisitExprConstUInt4", offsetof(soa::CollectAndReplaceIteratorFields,preVisitExprConstUInt4), 0 };
TypeInfo * __type_info__9cf35987f40b4cd_arg_types_var_11128648322172781937[2] = { &__type_info__21586ce84f433a21, &__type_info__a17d42718ebadfe7 };
const char * __type_info__9cf35987f40b4cd_arg_names_var_11128648322172781937[2] = { "self", "expr" };
VarInfo __struct_info__9a70e6afd95b0571_field_273 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__6636442e03391ebf, nullptr, (TypeInfo **)__type_info__9cf35987f40b4cd_arg_types_var_11128648322172781937, __type_info__9cf35987f40b4cd_arg_names_var_11128648322172781937, 2, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((smart_ptr_raw<Expression>,ast::AstVisitor,smart_ptr_raw<ExprConstUInt4> const ))>::size, UINT64_C(0x9cf35987f40b4cd), "visitExprConstUInt4", offsetof(soa::CollectAndReplaceIteratorFields,visitExprConstUInt4), 0 };
TypeInfo * __type_info__9fa05fd47bc43d08_arg_types_var_11128648322172781937[2] = { &__type_info__21586ce84f433a21, &__type_info__214ca0a8404236ce };
const char * __type_info__9fa05fd47bc43d08_arg_names_var_11128648322172781937[2] = { "self", "expr" };
VarInfo __struct_info__9a70e6afd95b0571_field_274 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__af63eb4c86020609, nullptr, (TypeInfo **)__type_info__9fa05fd47bc43d08_arg_types_var_11128648322172781937, __type_info__9fa05fd47bc43d08_arg_names_var_11128648322172781937, 2, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<ExprConstRange> const ))>::size, UINT64_C(0x9fa05fd47bc43d08), "preVisitExprConstRange", offsetof(soa::CollectAndReplaceIteratorFields,preVisitExprConstRange), 0 };
TypeInfo * __type_info__59d832b1080800dc_arg_types_var_11128648322172781937[2] = { &__type_info__21586ce84f433a21, &__type_info__214ca0a8404236ce };
const char * __type_info__59d832b1080800dc_arg_names_var_11128648322172781937[2] = { "self", "expr" };
VarInfo __struct_info__9a70e6afd95b0571_field_275 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__6636442e03391ebf, nullptr, (TypeInfo **)__type_info__59d832b1080800dc_arg_types_var_11128648322172781937, __type_info__59d832b1080800dc_arg_names_var_11128648322172781937, 2, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((smart_ptr_raw<Expression>,ast::AstVisitor,smart_ptr_raw<ExprConstRange> const ))>::size, UINT64_C(0x59d832b1080800dc), "visitExprConstRange", offsetof(soa::CollectAndReplaceIteratorFields,visitExprConstRange), 0 };
TypeInfo * __type_info__16126a94c04a3eb8_arg_types_var_11128648322172781937[2] = { &__type_info__21586ce84f433a21, &__type_info__d2fee6b26665c989 };
const char * __type_info__16126a94c04a3eb8_arg_names_var_11128648322172781937[2] = { "self", "expr" };
VarInfo __struct_info__9a70e6afd95b0571_field_276 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__af63eb4c86020609, nullptr, (TypeInfo **)__type_info__16126a94c04a3eb8_arg_types_var_11128648322172781937, __type_info__16126a94c04a3eb8_arg_names_var_11128648322172781937, 2, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<ExprConstURange> const ))>::size, UINT64_C(0x16126a94c04a3eb8), "preVisitExprConstURange", offsetof(soa::CollectAndReplaceIteratorFields,preVisitExprConstURange), 0 };
TypeInfo * __type_info__c0ff2b391e84edd7_arg_types_var_11128648322172781937[2] = { &__type_info__21586ce84f433a21, &__type_info__d2fee6b26665c989 };
const char * __type_info__c0ff2b391e84edd7_arg_names_var_11128648322172781937[2] = { "self", "expr" };
VarInfo __struct_info__9a70e6afd95b0571_field_277 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__6636442e03391ebf, nullptr, (TypeInfo **)__type_info__c0ff2b391e84edd7_arg_types_var_11128648322172781937, __type_info__c0ff2b391e84edd7_arg_names_var_11128648322172781937, 2, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((smart_ptr_raw<Expression>,ast::AstVisitor,smart_ptr_raw<ExprConstURange> const ))>::size, UINT64_C(0xc0ff2b391e84edd7), "visitExprConstURange", offsetof(soa::CollectAndReplaceIteratorFields,visitExprConstURange), 0 };
TypeInfo * __type_info__656c120dc9a2aef4_arg_types_var_11128648322172781937[2] = { &__type_info__21586ce84f433a21, &__type_info__4f02b717be42f032 };
const char * __type_info__656c120dc9a2aef4_arg_names_var_11128648322172781937[2] = { "self", "expr" };
VarInfo __struct_info__9a70e6afd95b0571_field_278 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__af63eb4c86020609, nullptr, (TypeInfo **)__type_info__656c120dc9a2aef4_arg_types_var_11128648322172781937, __type_info__656c120dc9a2aef4_arg_names_var_11128648322172781937, 2, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<ExprConstRange64> const ))>::size, UINT64_C(0x656c120dc9a2aef4), "preVisitExprConstRange64", offsetof(soa::CollectAndReplaceIteratorFields,preVisitExprConstRange64), 0 };
TypeInfo * __type_info__b2930cd0a5f1e99e_arg_types_var_11128648322172781937[2] = { &__type_info__21586ce84f433a21, &__type_info__4f02b717be42f032 };
const char * __type_info__b2930cd0a5f1e99e_arg_names_var_11128648322172781937[2] = { "self", "expr" };
VarInfo __struct_info__9a70e6afd95b0571_field_279 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__6636442e03391ebf, nullptr, (TypeInfo **)__type_info__b2930cd0a5f1e99e_arg_types_var_11128648322172781937, __type_info__b2930cd0a5f1e99e_arg_names_var_11128648322172781937, 2, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((smart_ptr_raw<Expression>,ast::AstVisitor,smart_ptr_raw<ExprConstRange64> const ))>::size, UINT64_C(0xb2930cd0a5f1e99e), "visitExprConstRange64", offsetof(soa::CollectAndReplaceIteratorFields,visitExprConstRange64), 0 };
TypeInfo * __type_info__cb55a8c2bdcfef4a_arg_types_var_11128648322172781937[2] = { &__type_info__21586ce84f433a21, &__type_info__b8524aede8fd2575 };
const char * __type_info__cb55a8c2bdcfef4a_arg_names_var_11128648322172781937[2] = { "self", "expr" };
VarInfo __struct_info__9a70e6afd95b0571_field_280 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__af63eb4c86020609, nullptr, (TypeInfo **)__type_info__cb55a8c2bdcfef4a_arg_types_var_11128648322172781937, __type_info__cb55a8c2bdcfef4a_arg_names_var_11128648322172781937, 2, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<ExprConstURange64> const ))>::size, UINT64_C(0xcb55a8c2bdcfef4a), "preVisitExprConstURange64", offsetof(soa::CollectAndReplaceIteratorFields,preVisitExprConstURange64), 0 };
TypeInfo * __type_info__5488550ebf009eb9_arg_types_var_11128648322172781937[2] = { &__type_info__21586ce84f433a21, &__type_info__b8524aede8fd2575 };
const char * __type_info__5488550ebf009eb9_arg_names_var_11128648322172781937[2] = { "self", "expr" };
VarInfo __struct_info__9a70e6afd95b0571_field_281 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__6636442e03391ebf, nullptr, (TypeInfo **)__type_info__5488550ebf009eb9_arg_types_var_11128648322172781937, __type_info__5488550ebf009eb9_arg_names_var_11128648322172781937, 2, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((smart_ptr_raw<Expression>,ast::AstVisitor,smart_ptr_raw<ExprConstURange64> const ))>::size, UINT64_C(0x5488550ebf009eb9), "visitExprConstURange64", offsetof(soa::CollectAndReplaceIteratorFields,visitExprConstURange64), 0 };
TypeInfo * __type_info__d3e82823af7f9dfa_arg_types_var_11128648322172781937[2] = { &__type_info__21586ce84f433a21, &__type_info__ea252439573ea197 };
const char * __type_info__d3e82823af7f9dfa_arg_names_var_11128648322172781937[2] = { "self", "expr" };
VarInfo __struct_info__9a70e6afd95b0571_field_282 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__af63eb4c86020609, nullptr, (TypeInfo **)__type_info__d3e82823af7f9dfa_arg_types_var_11128648322172781937, __type_info__d3e82823af7f9dfa_arg_names_var_11128648322172781937, 2, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<ExprConstBool> const ))>::size, UINT64_C(0xd3e82823af7f9dfa), "preVisitExprConstBool", offsetof(soa::CollectAndReplaceIteratorFields,preVisitExprConstBool), 0 };
TypeInfo * __type_info__1b3939fed1892a83_arg_types_var_11128648322172781937[2] = { &__type_info__21586ce84f433a21, &__type_info__ea252439573ea197 };
const char * __type_info__1b3939fed1892a83_arg_names_var_11128648322172781937[2] = { "self", "expr" };
VarInfo __struct_info__9a70e6afd95b0571_field_283 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__6636442e03391ebf, nullptr, (TypeInfo **)__type_info__1b3939fed1892a83_arg_types_var_11128648322172781937, __type_info__1b3939fed1892a83_arg_names_var_11128648322172781937, 2, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((smart_ptr_raw<Expression>,ast::AstVisitor,smart_ptr_raw<ExprConstBool> const ))>::size, UINT64_C(0x1b3939fed1892a83), "visitExprConstBool", offsetof(soa::CollectAndReplaceIteratorFields,visitExprConstBool), 0 };
TypeInfo * __type_info__49a8569ce2a262c6_arg_types_var_11128648322172781937[2] = { &__type_info__21586ce84f433a21, &__type_info__50c7808637778d65 };
const char * __type_info__49a8569ce2a262c6_arg_names_var_11128648322172781937[2] = { "self", "expr" };
VarInfo __struct_info__9a70e6afd95b0571_field_284 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__af63eb4c86020609, nullptr, (TypeInfo **)__type_info__49a8569ce2a262c6_arg_types_var_11128648322172781937, __type_info__49a8569ce2a262c6_arg_names_var_11128648322172781937, 2, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<ExprConstFloat> const ))>::size, UINT64_C(0x49a8569ce2a262c6), "preVisitExprConstFloat", offsetof(soa::CollectAndReplaceIteratorFields,preVisitExprConstFloat), 0 };
TypeInfo * __type_info__a6c714e9a856ff1f_arg_types_var_11128648322172781937[2] = { &__type_info__21586ce84f433a21, &__type_info__50c7808637778d65 };
const char * __type_info__a6c714e9a856ff1f_arg_names_var_11128648322172781937[2] = { "self", "expr" };
VarInfo __struct_info__9a70e6afd95b0571_field_285 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__6636442e03391ebf, nullptr, (TypeInfo **)__type_info__a6c714e9a856ff1f_arg_types_var_11128648322172781937, __type_info__a6c714e9a856ff1f_arg_names_var_11128648322172781937, 2, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((smart_ptr_raw<Expression>,ast::AstVisitor,smart_ptr_raw<ExprConstFloat> const ))>::size, UINT64_C(0xa6c714e9a856ff1f), "visitExprConstFloat", offsetof(soa::CollectAndReplaceIteratorFields,visitExprConstFloat), 0 };
TypeInfo * __type_info__4976569ce24d6cc6_arg_types_var_11128648322172781937[2] = { &__type_info__21586ce84f433a21, &__type_info__4f4cc10892c6c61 };
const char * __type_info__4976569ce24d6cc6_arg_names_var_11128648322172781937[2] = { "self", "expr" };
VarInfo __struct_info__9a70e6afd95b0571_field_286 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__af63eb4c86020609, nullptr, (TypeInfo **)__type_info__4976569ce24d6cc6_arg_types_var_11128648322172781937, __type_info__4976569ce24d6cc6_arg_names_var_11128648322172781937, 2, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<ExprConstFloat2> const ))>::size, UINT64_C(0x4976569ce24d6cc6), "preVisitExprConstFloat2", offsetof(soa::CollectAndReplaceIteratorFields,preVisitExprConstFloat2), 0 };
TypeInfo * __type_info__bb47b6090bd39977_arg_types_var_11128648322172781937[2] = { &__type_info__21586ce84f433a21, &__type_info__4f4cc10892c6c61 };
const char * __type_info__bb47b6090bd39977_arg_names_var_11128648322172781937[2] = { "self", "expr" };
VarInfo __struct_info__9a70e6afd95b0571_field_287 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__6636442e03391ebf, nullptr, (TypeInfo **)__type_info__bb47b6090bd39977_arg_types_var_11128648322172781937, __type_info__bb47b6090bd39977_arg_names_var_11128648322172781937, 2, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((smart_ptr_raw<Expression>,ast::AstVisitor,smart_ptr_raw<ExprConstFloat2> const ))>::size, UINT64_C(0xbb47b6090bd39977), "visitExprConstFloat2", offsetof(soa::CollectAndReplaceIteratorFields,visitExprConstFloat2), 0 };
TypeInfo * __type_info__4975569ce24bb9c6_arg_types_var_11128648322172781937[2] = { &__type_info__21586ce84f433a21, &__type_info__65f51082d9833a };
const char * __type_info__4975569ce24bb9c6_arg_names_var_11128648322172781937[2] = { "self", "expr" };
VarInfo __struct_info__9a70e6afd95b0571_field_288 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__af63eb4c86020609, nullptr, (TypeInfo **)__type_info__4975569ce24bb9c6_arg_types_var_11128648322172781937, __type_info__4975569ce24bb9c6_arg_names_var_11128648322172781937, 2, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<ExprConstFloat3> const ))>::size, UINT64_C(0x4975569ce24bb9c6), "preVisitExprConstFloat3", offsetof(soa::CollectAndReplaceIteratorFields,preVisitExprConstFloat3), 0 };
TypeInfo * __type_info__bb47b5090bd397c4_arg_types_var_11128648322172781937[2] = { &__type_info__21586ce84f433a21, &__type_info__65f51082d9833a };
const char * __type_info__bb47b5090bd397c4_arg_names_var_11128648322172781937[2] = { "self", "expr" };
VarInfo __struct_info__9a70e6afd95b0571_field_289 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__6636442e03391ebf, nullptr, (TypeInfo **)__type_info__bb47b5090bd397c4_arg_types_var_11128648322172781937, __type_info__bb47b5090bd397c4_arg_names_var_11128648322172781937, 2, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((smart_ptr_raw<Expression>,ast::AstVisitor,smart_ptr_raw<ExprConstFloat3> const ))>::size, UINT64_C(0xbb47b5090bd397c4), "visitExprConstFloat3", offsetof(soa::CollectAndReplaceIteratorFields,visitExprConstFloat3), 0 };
TypeInfo * __type_info__497c569ce2579ec6_arg_types_var_11128648322172781937[2] = { &__type_info__21586ce84f433a21, &__type_info__9089610918ba11f };
const char * __type_info__497c569ce2579ec6_arg_names_var_11128648322172781937[2] = { "self", "expr" };
VarInfo __struct_info__9a70e6afd95b0571_field_290 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__af63eb4c86020609, nullptr, (TypeInfo **)__type_info__497c569ce2579ec6_arg_types_var_11128648322172781937, __type_info__497c569ce2579ec6_arg_names_var_11128648322172781937, 2, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<ExprConstFloat4> const ))>::size, UINT64_C(0x497c569ce2579ec6), "preVisitExprConstFloat4", offsetof(soa::CollectAndReplaceIteratorFields,preVisitExprConstFloat4), 0 };
TypeInfo * __type_info__bb47b4090bd39611_arg_types_var_11128648322172781937[2] = { &__type_info__21586ce84f433a21, &__type_info__9089610918ba11f };
const char * __type_info__bb47b4090bd39611_arg_names_var_11128648322172781937[2] = { "self", "expr" };
VarInfo __struct_info__9a70e6afd95b0571_field_291 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__6636442e03391ebf, nullptr, (TypeInfo **)__type_info__bb47b4090bd39611_arg_types_var_11128648322172781937, __type_info__bb47b4090bd39611_arg_names_var_11128648322172781937, 2, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((smart_ptr_raw<Expression>,ast::AstVisitor,smart_ptr_raw<ExprConstFloat4> const ))>::size, UINT64_C(0xbb47b4090bd39611), "visitExprConstFloat4", offsetof(soa::CollectAndReplaceIteratorFields,visitExprConstFloat4), 0 };
TypeInfo * __type_info__7f643013a6867f4e_arg_types_var_11128648322172781937[2] = { &__type_info__21586ce84f433a21, &__type_info__e9cb7c9300717d9e };
const char * __type_info__7f643013a6867f4e_arg_names_var_11128648322172781937[2] = { "self", "expr" };
VarInfo __struct_info__9a70e6afd95b0571_field_292 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__af63eb4c86020609, nullptr, (TypeInfo **)__type_info__7f643013a6867f4e_arg_types_var_11128648322172781937, __type_info__7f643013a6867f4e_arg_names_var_11128648322172781937, 2, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<ExprConstString> const ))>::size, UINT64_C(0x7f643013a6867f4e), "preVisitExprConstString", offsetof(soa::CollectAndReplaceIteratorFields,preVisitExprConstString), 0 };
TypeInfo * __type_info__b99ccfc608b7db78_arg_types_var_11128648322172781937[2] = { &__type_info__21586ce84f433a21, &__type_info__e9cb7c9300717d9e };
const char * __type_info__b99ccfc608b7db78_arg_names_var_11128648322172781937[2] = { "self", "expr" };
VarInfo __struct_info__9a70e6afd95b0571_field_293 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__6636442e03391ebf, nullptr, (TypeInfo **)__type_info__b99ccfc608b7db78_arg_types_var_11128648322172781937, __type_info__b99ccfc608b7db78_arg_names_var_11128648322172781937, 2, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((smart_ptr_raw<Expression>,ast::AstVisitor,smart_ptr_raw<ExprConstString> const ))>::size, UINT64_C(0xb99ccfc608b7db78), "visitExprConstString", offsetof(soa::CollectAndReplaceIteratorFields,visitExprConstString), 0 };
TypeInfo * __type_info__9e29fca33a75035e_arg_types_var_11128648322172781937[2] = { &__type_info__21586ce84f433a21, &__type_info__7f81cc8503986a86 };
const char * __type_info__9e29fca33a75035e_arg_names_var_11128648322172781937[2] = { "self", "expr" };
VarInfo __struct_info__9a70e6afd95b0571_field_294 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__af63eb4c86020609, nullptr, (TypeInfo **)__type_info__9e29fca33a75035e_arg_types_var_11128648322172781937, __type_info__9e29fca33a75035e_arg_names_var_11128648322172781937, 2, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<ExprConstDouble> const ))>::size, UINT64_C(0x9e29fca33a75035e), "preVisitExprConstDouble", offsetof(soa::CollectAndReplaceIteratorFields,preVisitExprConstDouble), 0 };
TypeInfo * __type_info__16554db2d8632df8_arg_types_var_11128648322172781937[2] = { &__type_info__21586ce84f433a21, &__type_info__7f81cc8503986a86 };
const char * __type_info__16554db2d8632df8_arg_names_var_11128648322172781937[2] = { "self", "expr" };
VarInfo __struct_info__9a70e6afd95b0571_field_295 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__6636442e03391ebf, nullptr, (TypeInfo **)__type_info__16554db2d8632df8_arg_types_var_11128648322172781937, __type_info__16554db2d8632df8_arg_names_var_11128648322172781937, 2, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((smart_ptr_raw<Expression>,ast::AstVisitor,smart_ptr_raw<ExprConstDouble> const ))>::size, UINT64_C(0x16554db2d8632df8), "visitExprConstDouble", offsetof(soa::CollectAndReplaceIteratorFields,visitExprConstDouble), 0 };
TypeInfo * __type_info__c66fe0f90d662c9a_arg_types_var_11128648322172781937[2] = { &__type_info__21586ce84f433a21, &__type_info__3229d47464f4ad50 };
const char * __type_info__c66fe0f90d662c9a_arg_names_var_11128648322172781937[2] = { "self", "expr" };
VarInfo __struct_info__9a70e6afd95b0571_field_296 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__af63eb4c86020609, nullptr, (TypeInfo **)__type_info__c66fe0f90d662c9a_arg_types_var_11128648322172781937, __type_info__c66fe0f90d662c9a_arg_names_var_11128648322172781937, 2, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<ExprFakeContext> const ))>::size, UINT64_C(0xc66fe0f90d662c9a), "preVisitExprFakeContext", offsetof(soa::CollectAndReplaceIteratorFields,preVisitExprFakeContext), 0 };
TypeInfo * __type_info__331a9f592d42d862_arg_types_var_11128648322172781937[2] = { &__type_info__21586ce84f433a21, &__type_info__3229d47464f4ad50 };
const char * __type_info__331a9f592d42d862_arg_names_var_11128648322172781937[2] = { "self", "expr" };
VarInfo __struct_info__9a70e6afd95b0571_field_297 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__6636442e03391ebf, nullptr, (TypeInfo **)__type_info__331a9f592d42d862_arg_types_var_11128648322172781937, __type_info__331a9f592d42d862_arg_names_var_11128648322172781937, 2, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((smart_ptr_raw<Expression>,ast::AstVisitor,smart_ptr_raw<ExprFakeContext> const ))>::size, UINT64_C(0x331a9f592d42d862), "visitExprFakeContext", offsetof(soa::CollectAndReplaceIteratorFields,visitExprFakeContext), 0 };
TypeInfo * __type_info__d217eabc35e15240_arg_types_var_11128648322172781937[2] = { &__type_info__21586ce84f433a21, &__type_info__511818eae83f8137 };
const char * __type_info__d217eabc35e15240_arg_names_var_11128648322172781937[2] = { "self", "expr" };
VarInfo __struct_info__9a70e6afd95b0571_field_298 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__af63eb4c86020609, nullptr, (TypeInfo **)__type_info__d217eabc35e15240_arg_types_var_11128648322172781937, __type_info__d217eabc35e15240_arg_names_var_11128648322172781937, 2, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<ExprFakeLineInfo> const ))>::size, UINT64_C(0xd217eabc35e15240), "preVisitExprFakeLineInfo", offsetof(soa::CollectAndReplaceIteratorFields,preVisitExprFakeLineInfo), 0 };
TypeInfo * __type_info__c4ff5e8208cfd577_arg_types_var_11128648322172781937[2] = { &__type_info__21586ce84f433a21, &__type_info__511818eae83f8137 };
const char * __type_info__c4ff5e8208cfd577_arg_names_var_11128648322172781937[2] = { "self", "expr" };
VarInfo __struct_info__9a70e6afd95b0571_field_299 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__6636442e03391ebf, nullptr, (TypeInfo **)__type_info__c4ff5e8208cfd577_arg_types_var_11128648322172781937, __type_info__c4ff5e8208cfd577_arg_names_var_11128648322172781937, 2, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((smart_ptr_raw<Expression>,ast::AstVisitor,smart_ptr_raw<ExprFakeLineInfo> const ))>::size, UINT64_C(0xc4ff5e8208cfd577), "visitExprFakeLineInfo", offsetof(soa::CollectAndReplaceIteratorFields,visitExprFakeLineInfo), 0 };
TypeInfo * __type_info__13e00cd547d6eaf4_arg_types_var_11128648322172781937[2] = { &__type_info__21586ce84f433a21, &__type_info__6628bcbce7db6a7d };
const char * __type_info__13e00cd547d6eaf4_arg_names_var_11128648322172781937[2] = { "self", "expr" };
VarInfo __struct_info__9a70e6afd95b0571_field_300 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__af63eb4c86020609, nullptr, (TypeInfo **)__type_info__13e00cd547d6eaf4_arg_types_var_11128648322172781937, __type_info__13e00cd547d6eaf4_arg_names_var_11128648322172781937, 2, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<ExprReader> const ))>::size, UINT64_C(0x13e00cd547d6eaf4), "preVisitExprReader", offsetof(soa::CollectAndReplaceIteratorFields,preVisitExprReader), 0 };
TypeInfo * __type_info__c4fea7a714ae6c3b_arg_types_var_11128648322172781937[2] = { &__type_info__21586ce84f433a21, &__type_info__6628bcbce7db6a7d };
const char * __type_info__c4fea7a714ae6c3b_arg_names_var_11128648322172781937[2] = { "self", "expr" };
VarInfo __struct_info__9a70e6afd95b0571_field_301 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__6636442e03391ebf, nullptr, (TypeInfo **)__type_info__c4fea7a714ae6c3b_arg_types_var_11128648322172781937, __type_info__c4fea7a714ae6c3b_arg_names_var_11128648322172781937, 2, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((smart_ptr_raw<Expression>,ast::AstVisitor,smart_ptr_raw<ExprReader> const ))>::size, UINT64_C(0xc4fea7a714ae6c3b), "visitExprReader", offsetof(soa::CollectAndReplaceIteratorFields,visitExprReader), 0 };
TypeInfo * __type_info__4cdbd1bf04b48049_arg_types_var_11128648322172781937[2] = { &__type_info__21586ce84f433a21, &__type_info__eb22258b16c8c6df };
const char * __type_info__4cdbd1bf04b48049_arg_names_var_11128648322172781937[2] = { "self", "expr" };
VarInfo __struct_info__9a70e6afd95b0571_field_302 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__af63eb4c86020609, nullptr, (TypeInfo **)__type_info__4cdbd1bf04b48049_arg_types_var_11128648322172781937, __type_info__4cdbd1bf04b48049_arg_names_var_11128648322172781937, 2, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<ExprUnsafe> const ))>::size, UINT64_C(0x4cdbd1bf04b48049), "preVisitExprUnsafe", offsetof(soa::CollectAndReplaceIteratorFields,preVisitExprUnsafe), 0 };
TypeInfo * __type_info__2de98b8e611d142d_arg_types_var_11128648322172781937[2] = { &__type_info__21586ce84f433a21, &__type_info__eb22258b16c8c6df };
const char * __type_info__2de98b8e611d142d_arg_names_var_11128648322172781937[2] = { "self", "expr" };
VarInfo __struct_info__9a70e6afd95b0571_field_303 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__6636442e03391ebf, nullptr, (TypeInfo **)__type_info__2de98b8e611d142d_arg_types_var_11128648322172781937, __type_info__2de98b8e611d142d_arg_names_var_11128648322172781937, 2, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((smart_ptr_raw<Expression>,ast::AstVisitor,smart_ptr_raw<ExprUnsafe> const ))>::size, UINT64_C(0x2de98b8e611d142d), "visitExprUnsafe", offsetof(soa::CollectAndReplaceIteratorFields,visitExprUnsafe), 0 };
TypeInfo * __type_info__c36a956b02f0bd81_arg_types_var_11128648322172781937[2] = { &__type_info__21586ce84f433a21, &__type_info__636dc1714c171367 };
const char * __type_info__c36a956b02f0bd81_arg_names_var_11128648322172781937[2] = { "self", "expr" };
VarInfo __struct_info__9a70e6afd95b0571_field_304 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__af63eb4c86020609, nullptr, (TypeInfo **)__type_info__c36a956b02f0bd81_arg_types_var_11128648322172781937, __type_info__c36a956b02f0bd81_arg_names_var_11128648322172781937, 2, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((void,ast::AstVisitor,smart_ptr_raw<ExprCallMacro> const ))>::size, UINT64_C(0xc36a956b02f0bd81), "preVisitExprCallMacro", offsetof(soa::CollectAndReplaceIteratorFields,preVisitExprCallMacro), 0 };
TypeInfo * __type_info__db9294961714f437_arg_types_var_11128648322172781937[2] = { &__type_info__21586ce84f433a21, &__type_info__636dc1714c171367 };
const char * __type_info__db9294961714f437_arg_names_var_11128648322172781937[2] = { "self", "expr" };
VarInfo __struct_info__9a70e6afd95b0571_field_305 =  { Type::tFunction, nullptr, nullptr, nullptr, &__type_info__6636442e03391ebf, nullptr, (TypeInfo **)__type_info__db9294961714f437_arg_types_var_11128648322172781937, __type_info__db9294961714f437_arg_names_var_11128648322172781937, 2, 0, nullptr, 12, TypeSize<Func DAS_COMMENT((smart_ptr_raw<Expression>,ast::AstVisitor,smart_ptr_raw<ExprCallMacro> const ))>::size, UINT64_C(0xdb9294961714f437), "visitExprCallMacro", offsetof(soa::CollectAndReplaceIteratorFields,visitExprCallMacro), 0 };
VarInfo __struct_info__9a70e6afd95b0571_field_306 =  { Type::tString, nullptr, nullptr, nullptr, nullptr, nullptr, nullptr, nullptr, 0, 0, nullptr, 16388, TypeSize<char *>::size, UINT64_C(0x7ae2a7cee8a60ea0), "it_prefix", offsetof(soa::CollectAndReplaceIteratorFields,it_prefix), 307 };
VarInfo __struct_info__9a70e6afd95b0571_field_307 =  { Type::tTable, nullptr, nullptr, nullptr, &__type_info__af63ee4c86020b22, &__type_info__af63df4c8601f1a5, nullptr, nullptr, 0, 0, nullptr, 57346, TypeSize<TTable<char *,bool>>::size, UINT64_C(0xf52d5a4ff22c91d4), "names", offsetof(soa::CollectAndReplaceIteratorFields,names), 308 };
VarInfo * __struct_info__9a70e6afd95b0571_fields[308] =  { &__struct_info__9a70e6afd95b0571_field_0, &__struct_info__9a70e6afd95b0571_field_1, &__struct_info__9a70e6afd95b0571_field_2, &__struct_info__9a70e6afd95b0571_field_3, &__struct_info__9a70e6afd95b0571_field_4, &__struct_info__9a70e6afd95b0571_field_5, &__struct_info__9a70e6afd95b0571_field_6, &__struct_info__9a70e6afd95b0571_field_7, &__struct_info__9a70e6afd95b0571_field_8, &__struct_info__9a70e6afd95b0571_field_9, &__struct_info__9a70e6afd95b0571_field_10, &__struct_info__9a70e6afd95b0571_field_11, &__struct_info__9a70e6afd95b0571_field_12, &__struct_info__9a70e6afd95b0571_field_13, &__struct_info__9a70e6afd95b0571_field_14, &__struct_info__9a70e6afd95b0571_field_15, &__struct_info__9a70e6afd95b0571_field_16, &__struct_info__9a70e6afd95b0571_field_17, &__struct_info__9a70e6afd95b0571_field_18, &__struct_info__9a70e6afd95b0571_field_19, &__struct_info__9a70e6afd95b0571_field_20, &__struct_info__9a70e6afd95b0571_field_21, &__struct_info__9a70e6afd95b0571_field_22, &__struct_info__9a70e6afd95b0571_field_23, &__struct_info__9a70e6afd95b0571_field_24, &__struct_info__9a70e6afd95b0571_field_25, &__struct_info__9a70e6afd95b0571_field_26, &__struct_info__9a70e6afd95b0571_field_27, &__struct_info__9a70e6afd95b0571_field_28, &__struct_info__9a70e6afd95b0571_field_29, &__struct_info__9a70e6afd95b0571_field_30, &__struct_info__9a70e6afd95b0571_field_31, &__struct_info__9a70e6afd95b0571_field_32, &__struct_info__9a70e6afd95b0571_field_33, &__struct_info__9a70e6afd95b0571_field_34, &__struct_info__9a70e6afd95b0571_field_35, &__struct_info__9a70e6afd95b0571_field_36, &__struct_info__9a70e6afd95b0571_field_37, &__struct_info__9a70e6afd95b0571_field_38, &__struct_info__9a70e6afd95b0571_field_39, &__struct_info__9a70e6afd95b0571_field_40, &__struct_info__9a70e6afd95b0571_field_41, &__struct_info__9a70e6afd95b0571_field_42, &__struct_info__9a70e6afd95b0571_field_43, &__struct_info__9a70e6afd95b0571_field_44, &__struct_info__9a70e6afd95b0571_field_45, &__struct_info__9a70e6afd95b0571_field_46, &__struct_info__9a70e6afd95b0571_field_47, &__struct_info__9a70e6afd95b0571_field_48, &__struct_info__9a70e6afd95b0571_field_49, &__struct_info__9a70e6afd95b0571_field_50, &__struct_info__9a70e6afd95b0571_field_51, &__struct_info__9a70e6afd95b0571_field_52, &__struct_info__9a70e6afd95b0571_field_53, &__struct_info__9a70e6afd95b0571_field_54, &__struct_info__9a70e6afd95b0571_field_55, &__struct_info__9a70e6afd95b0571_field_56, &__struct_info__9a70e6afd95b0571_field_57, &__struct_info__9a70e6afd95b0571_field_58, &__struct_info__9a70e6afd95b0571_field_59, &__struct_info__9a70e6afd95b0571_field_60, &__struct_info__9a70e6afd95b0571_field_61, &__struct_info__9a70e6afd95b0571_field_62, &__struct_info__9a70e6afd95b0571_field_63, &__struct_info__9a70e6afd95b0571_field_64, &__struct_info__9a70e6afd95b0571_field_65, &__struct_info__9a70e6afd95b0571_field_66, &__struct_info__9a70e6afd95b0571_field_67, &__struct_info__9a70e6afd95b0571_field_68, &__struct_info__9a70e6afd95b0571_field_69, &__struct_info__9a70e6afd95b0571_field_70, &__struct_info__9a70e6afd95b0571_field_71, &__struct_info__9a70e6afd95b0571_field_72, &__struct_info__9a70e6afd95b0571_field_73, &__struct_info__9a70e6afd95b0571_field_74, &__struct_info__9a70e6afd95b0571_field_75, &__struct_info__9a70e6afd95b0571_field_76, &__struct_info__9a70e6afd95b0571_field_77, &__struct_info__9a70e6afd95b0571_field_78, &__struct_info__9a70e6afd95b0571_field_79, &__struct_info__9a70e6afd95b0571_field_80, &__struct_info__9a70e6afd95b0571_field_81, &__struct_info__9a70e6afd95b0571_field_82, &__struct_info__9a70e6afd95b0571_field_83, &__struct_info__9a70e6afd95b0571_field_84, &__struct_info__9a70e6afd95b0571_field_85, &__struct_info__9a70e6afd95b0571_field_86, &__struct_info__9a70e6afd95b0571_field_87, &__struct_info__9a70e6afd95b0571_field_88, &__struct_info__9a70e6afd95b0571_field_89, &__struct_info__9a70e6afd95b0571_field_90, &__struct_info__9a70e6afd95b0571_field_91, &__struct_info__9a70e6afd95b0571_field_92, &__struct_info__9a70e6afd95b0571_field_93, &__struct_info__9a70e6afd95b0571_field_94, &__struct_info__9a70e6afd95b0571_field_95, &__struct_info__9a70e6afd95b0571_field_96, &__struct_info__9a70e6afd95b0571_field_97, &__struct_info__9a70e6afd95b0571_field_98, &__struct_info__9a70e6afd95b0571_field_99, &__struct_info__9a70e6afd95b0571_field_100, &__struct_info__9a70e6afd95b0571_field_101, &__struct_info__9a70e6afd95b0571_field_102, &__struct_info__9a70e6afd95b0571_field_103, &__struct_info__9a70e6afd95b0571_field_104, &__struct_info__9a70e6afd95b0571_field_105, &__struct_info__9a70e6afd95b0571_field_106, &__struct_info__9a70e6afd95b0571_field_107, &__struct_info__9a70e6afd95b0571_field_108, &__struct_info__9a70e6afd95b0571_field_109, &__struct_info__9a70e6afd95b0571_field_110, &__struct_info__9a70e6afd95b0571_field_111, &__struct_info__9a70e6afd95b0571_field_112, &__struct_info__9a70e6afd95b0571_field_113, &__struct_info__9a70e6afd95b0571_field_114, &__struct_info__9a70e6afd95b0571_field_115, &__struct_info__9a70e6afd95b0571_field_116, &__struct_info__9a70e6afd95b0571_field_117, &__struct_info__9a70e6afd95b0571_field_118, &__struct_info__9a70e6afd95b0571_field_119, &__struct_info__9a70e6afd95b0571_field_120, &__struct_info__9a70e6afd95b0571_field_121, &__struct_info__9a70e6afd95b0571_field_122, &__struct_info__9a70e6afd95b0571_field_123, &__struct_info__9a70e6afd95b0571_field_124, &__struct_info__9a70e6afd95b0571_field_125, &__struct_info__9a70e6afd95b0571_field_126, &__struct_info__9a70e6afd95b0571_field_127, &__struct_info__9a70e6afd95b0571_field_128, &__struct_info__9a70e6afd95b0571_field_129, &__struct_info__9a70e6afd95b0571_field_130, &__struct_info__9a70e6afd95b0571_field_131, &__struct_info__9a70e6afd95b0571_field_132, &__struct_info__9a70e6afd95b0571_field_133, &__struct_info__9a70e6afd95b0571_field_134, &__struct_info__9a70e6afd95b0571_field_135, &__struct_info__9a70e6afd95b0571_field_136, &__struct_info__9a70e6afd95b0571_field_137, &__struct_info__9a70e6afd95b0571_field_138, &__struct_info__9a70e6afd95b0571_field_139, &__struct_info__9a70e6afd95b0571_field_140, &__struct_info__9a70e6afd95b0571_field_141, &__struct_info__9a70e6afd95b0571_field_142, &__struct_info__9a70e6afd95b0571_field_143, &__struct_info__9a70e6afd95b0571_field_144, &__struct_info__9a70e6afd95b0571_field_145, &__struct_info__9a70e6afd95b0571_field_146, &__struct_info__9a70e6afd95b0571_field_147, &__struct_info__9a70e6afd95b0571_field_148, &__struct_info__9a70e6afd95b0571_field_149, &__struct_info__9a70e6afd95b0571_field_150, &__struct_info__9a70e6afd95b0571_field_151, &__struct_info__9a70e6afd95b0571_field_152, &__struct_info__9a70e6afd95b0571_field_153, &__struct_info__9a70e6afd95b0571_field_154, &__struct_info__9a70e6afd95b0571_field_155, &__struct_info__9a70e6afd95b0571_field_156, &__struct_info__9a70e6afd95b0571_field_157, &__struct_info__9a70e6afd95b0571_field_158, &__struct_info__9a70e6afd95b0571_field_159, &__struct_info__9a70e6afd95b0571_field_160, &__struct_info__9a70e6afd95b0571_field_161, &__struct_info__9a70e6afd95b0571_field_162, &__struct_info__9a70e6afd95b0571_field_163, &__struct_info__9a70e6afd95b0571_field_164, &__struct_info__9a70e6afd95b0571_field_165, &__struct_info__9a70e6afd95b0571_field_166, &__struct_info__9a70e6afd95b0571_field_167, &__struct_info__9a70e6afd95b0571_field_168, &__struct_info__9a70e6afd95b0571_field_169, &__struct_info__9a70e6afd95b0571_field_170, &__struct_info__9a70e6afd95b0571_field_171, &__struct_info__9a70e6afd95b0571_field_172, &__struct_info__9a70e6afd95b0571_field_173, &__struct_info__9a70e6afd95b0571_field_174, &__struct_info__9a70e6afd95b0571_field_175, &__struct_info__9a70e6afd95b0571_field_176, &__struct_info__9a70e6afd95b0571_field_177, &__struct_info__9a70e6afd95b0571_field_178, &__struct_info__9a70e6afd95b0571_field_179, &__struct_info__9a70e6afd95b0571_field_180, &__struct_info__9a70e6afd95b0571_field_181, &__struct_info__9a70e6afd95b0571_field_182, &__struct_info__9a70e6afd95b0571_field_183, &__struct_info__9a70e6afd95b0571_field_184, &__struct_info__9a70e6afd95b0571_field_185, &__struct_info__9a70e6afd95b0571_field_186, &__struct_info__9a70e6afd95b0571_field_187, &__struct_info__9a70e6afd95b0571_field_188, &__struct_info__9a70e6afd95b0571_field_189, &__struct_info__9a70e6afd95b0571_field_190, &__struct_info__9a70e6afd95b0571_field_191, &__struct_info__9a70e6afd95b0571_field_192, &__struct_info__9a70e6afd95b0571_field_193, &__struct_info__9a70e6afd95b0571_field_194, &__struct_info__9a70e6afd95b0571_field_195, &__struct_info__9a70e6afd95b0571_field_196, &__struct_info__9a70e6afd95b0571_field_197, &__struct_info__9a70e6afd95b0571_field_198, &__struct_info__9a70e6afd95b0571_field_199, &__struct_info__9a70e6afd95b0571_field_200, &__struct_info__9a70e6afd95b0571_field_201, &__struct_info__9a70e6afd95b0571_field_202, &__struct_info__9a70e6afd95b0571_field_203, &__struct_info__9a70e6afd95b0571_field_204, &__struct_info__9a70e6afd95b0571_field_205, &__struct_info__9a70e6afd95b0571_field_206, &__struct_info__9a70e6afd95b0571_field_207, &__struct_info__9a70e6afd95b0571_field_208, &__struct_info__9a70e6afd95b0571_field_209, &__struct_info__9a70e6afd95b0571_field_210, &__struct_info__9a70e6afd95b0571_field_211, &__struct_info__9a70e6afd95b0571_field_212, &__struct_info__9a70e6afd95b0571_field_213, &__struct_info__9a70e6afd95b0571_field_214, &__struct_info__9a70e6afd95b0571_field_215, &__struct_info__9a70e6afd95b0571_field_216, &__struct_info__9a70e6afd95b0571_field_217, &__struct_info__9a70e6afd95b0571_field_218, &__struct_info__9a70e6afd95b0571_field_219, &__struct_info__9a70e6afd95b0571_field_220, &__struct_info__9a70e6afd95b0571_field_221, &__struct_info__9a70e6afd95b0571_field_222, &__struct_info__9a70e6afd95b0571_field_223, &__struct_info__9a70e6afd95b0571_field_224, &__struct_info__9a70e6afd95b0571_field_225, &__struct_info__9a70e6afd95b0571_field_226, &__struct_info__9a70e6afd95b0571_field_227, &__struct_info__9a70e6afd95b0571_field_228, &__struct_info__9a70e6afd95b0571_field_229, &__struct_info__9a70e6afd95b0571_field_230, &__struct_info__9a70e6afd95b0571_field_231, &__struct_info__9a70e6afd95b0571_field_232, &__struct_info__9a70e6afd95b0571_field_233, &__struct_info__9a70e6afd95b0571_field_234, &__struct_info__9a70e6afd95b0571_field_235, &__struct_info__9a70e6afd95b0571_field_236, &__struct_info__9a70e6afd95b0571_field_237, &__struct_info__9a70e6afd95b0571_field_238, &__struct_info__9a70e6afd95b0571_field_239, &__struct_info__9a70e6afd95b0571_field_240, &__struct_info__9a70e6afd95b0571_field_241, &__struct_info__9a70e6afd95b0571_field_242, &__struct_info__9a70e6afd95b0571_field_243, &__struct_info__9a70e6afd95b0571_field_244, &__struct_info__9a70e6afd95b0571_field_245, &__struct_info__9a70e6afd95b0571_field_246, &__struct_info__9a70e6afd95b0571_field_247, &__struct_info__9a70e6afd95b0571_field_248, &__struct_info__9a70e6afd95b0571_field_249, &__struct_info__9a70e6afd95b0571_field_250, &__struct_info__9a70e6afd95b0571_field_251, &__struct_info__9a70e6afd95b0571_field_252, &__struct_info__9a70e6afd95b0571_field_253, &__struct_info__9a70e6afd95b0571_field_254, &__struct_info__9a70e6afd95b0571_field_255, &__struct_info__9a70e6afd95b0571_field_256, &__struct_info__9a70e6afd95b0571_field_257, &__struct_info__9a70e6afd95b0571_field_258, &__struct_info__9a70e6afd95b0571_field_259, &__struct_info__9a70e6afd95b0571_field_260, &__struct_info__9a70e6afd95b0571_field_261, &__struct_info__9a70e6afd95b0571_field_262, &__struct_info__9a70e6afd95b0571_field_263, &__struct_info__9a70e6afd95b0571_field_264, &__struct_info__9a70e6afd95b0571_field_265, &__struct_info__9a70e6afd95b0571_field_266, &__struct_info__9a70e6afd95b0571_field_267, &__struct_info__9a70e6afd95b0571_field_268, &__struct_info__9a70e6afd95b0571_field_269, &__struct_info__9a70e6afd95b0571_field_270, &__struct_info__9a70e6afd95b0571_field_271, &__struct_info__9a70e6afd95b0571_field_272, &__struct_info__9a70e6afd95b0571_field_273, &__struct_info__9a70e6afd95b0571_field_274, &__struct_info__9a70e6afd95b0571_field_275, &__struct_info__9a70e6afd95b0571_field_276, &__struct_info__9a70e6afd95b0571_field_277, &__struct_info__9a70e6afd95b0571_field_278, &__struct_info__9a70e6afd95b0571_field_279, &__struct_info__9a70e6afd95b0571_field_280, &__struct_info__9a70e6afd95b0571_field_281, &__struct_info__9a70e6afd95b0571_field_282, &__struct_info__9a70e6afd95b0571_field_283, &__struct_info__9a70e6afd95b0571_field_284, &__struct_info__9a70e6afd95b0571_field_285, &__struct_info__9a70e6afd95b0571_field_286, &__struct_info__9a70e6afd95b0571_field_287, &__struct_info__9a70e6afd95b0571_field_288, &__struct_info__9a70e6afd95b0571_field_289, &__struct_info__9a70e6afd95b0571_field_290, &__struct_info__9a70e6afd95b0571_field_291, &__struct_info__9a70e6afd95b0571_field_292, &__struct_info__9a70e6afd95b0571_field_293, &__struct_info__9a70e6afd95b0571_field_294, &__struct_info__9a70e6afd95b0571_field_295, &__struct_info__9a70e6afd95b0571_field_296, &__struct_info__9a70e6afd95b0571_field_297, &__struct_info__9a70e6afd95b0571_field_298, &__struct_info__9a70e6afd95b0571_field_299, &__struct_info__9a70e6afd95b0571_field_300, &__struct_info__9a70e6afd95b0571_field_301, &__struct_info__9a70e6afd95b0571_field_302, &__struct_info__9a70e6afd95b0571_field_303, &__struct_info__9a70e6afd95b0571_field_304, &__struct_info__9a70e6afd95b0571_field_305, &__struct_info__9a70e6afd95b0571_field_306, &__struct_info__9a70e6afd95b0571_field_307 };
StructInfo __struct_info__9a70e6afd95b0571 = {"CollectAndReplaceIteratorFields", "soa", 29, __struct_info__9a70e6afd95b0571_fields, 308, TypeSize<soa::CollectAndReplaceIteratorFields>::size, UINT64_C(0x0), nullptr, UINT64_C(0x9a70e6afd95b0571), 0 };
TypeInfo __type_info__5eddda99b960ff80 = { Type::tArray, nullptr, nullptr, nullptr, &__type_info__af63ee4c86020b22, nullptr, nullptr, nullptr, 0, 0, nullptr, 57346, TypeSize<TArray<char *>>::size, UINT64_C(0x5eddda99b960ff80) };
TypeInfo __type_info__7c61f7ae88617bb2 = { Type::tPointer, nullptr, nullptr, nullptr, &__type_info__cd505ad3b1c59cc6, nullptr, nullptr, nullptr, 0, 0, nullptr, 24620, TypeSize<Enumeration *>::size, UINT64_C(0x7c61f7ae88617bb2) };
TypeInfo __type_info__c2f4bc15903e1610 = { Type::tPointer, nullptr, nullptr, nullptr, &__type_info__7329fadda4ca251c, nullptr, nullptr, nullptr, 0, 0, nullptr, 25632, TypeSize<smart_ptr_raw<ExprAddr>>::size, UINT64_C(0xc2f4bc15903e1610) };
TypeInfo __type_info__defdb920e82da0f4 = { Type::tPointer, nullptr, nullptr, nullptr, &__type_info__3693bdfd1150bb56, nullptr, nullptr, nullptr, 0, 0, nullptr, 25632, TypeSize<smart_ptr_raw<ExprArrayComprehension>>::size, UINT64_C(0xdefdb920e82da0f4) };
TypeInfo __type_info__229aabe2f8bef1d9 = { Type::tPointer, nullptr, nullptr, nullptr, &__type_info__71ff6f045d2186f1, nullptr, nullptr, nullptr, 0, 0, nullptr, 25632, TypeSize<smart_ptr_raw<ExprAsVariant>>::size, UINT64_C(0x229aabe2f8bef1d9) };
TypeInfo __type_info__6bdd529063b3dbeb = { Type::tPointer, nullptr, nullptr, nullptr, &__type_info__acc5cdadba98f68e, nullptr, nullptr, nullptr, 0, 0, nullptr, 25632, TypeSize<smart_ptr_raw<ExprAscend>>::size, UINT64_C(0x6bdd529063b3dbeb) };
TypeInfo __type_info__d551858bc6d43037 = { Type::tPointer, nullptr, nullptr, nullptr, &__type_info__2055bdfdcee6bf5e, nullptr, nullptr, nullptr, 0, 0, nullptr, 25632, TypeSize<smart_ptr_raw<ExprAssert>>::size, UINT64_C(0xd551858bc6d43037) };
TypeInfo __type_info__83c768ad9b3f81ea = { Type::tPointer, nullptr, nullptr, nullptr, &__type_info__fb56aefdaf9de951, nullptr, nullptr, nullptr, 0, 0, nullptr, 25632, TypeSize<smart_ptr_raw<ExprAssume>>::size, UINT64_C(0x83c768ad9b3f81ea) };
TypeInfo __type_info__241df6ccda394202 = { Type::tPointer, nullptr, nullptr, nullptr, &__type_info__cb4a7f89a13eab36, nullptr, nullptr, nullptr, 0, 0, nullptr, 25632, TypeSize<smart_ptr_raw<ExprAt>>::size, UINT64_C(0x241df6ccda394202) };
TypeInfo __type_info__4dee28f2a93bbef7 = { Type::tPointer, nullptr, nullptr, nullptr, &__type_info__71c84a7f531ca5bb, nullptr, nullptr, nullptr, 0, 0, nullptr, 25632, TypeSize<smart_ptr_raw<ExprBlock>>::size, UINT64_C(0x4dee28f2a93bbef7) };
TypeInfo __type_info__5047b5dbcc2127cd = { Type::tPointer, nullptr, nullptr, nullptr, &__type_info__afd7e462d2caeebb, nullptr, nullptr, nullptr, 0, 0, nullptr, 25632, TypeSize<smart_ptr_raw<ExprBreak>>::size, UINT64_C(0x5047b5dbcc2127cd) };
TypeInfo __type_info__7e04c1d12891d606 = { Type::tPointer, nullptr, nullptr, nullptr, &__type_info__54fceee561bff5eb, nullptr, nullptr, nullptr, 0, 0, nullptr, 24620, TypeSize<ExprCall *>::size, UINT64_C(0x7e04c1d12891d606) };
TypeInfo __type_info__7dd1c1d1283b2d06 = { Type::tPointer, nullptr, nullptr, nullptr, &__type_info__54fceee561bff5eb, nullptr, nullptr, nullptr, 0, 0, nullptr, 25632, TypeSize<smart_ptr_raw<ExprCall>>::size, UINT64_C(0x7dd1c1d1283b2d06) };
TypeInfo __type_info__636dc1714c171367 = { Type::tPointer, nullptr, nullptr, nullptr, &__type_info__a0219258cb3926ee, nullptr, nullptr, nullptr, 0, 0, nullptr, 25632, TypeSize<smart_ptr_raw<ExprCallMacro>>::size, UINT64_C(0x636dc1714c171367) };
TypeInfo __type_info__bc5b346893db35b = { Type::tPointer, nullptr, nullptr, nullptr, &__type_info__1afef6e5304b2283, nullptr, nullptr, nullptr, 0, 0, nullptr, 25632, TypeSize<smart_ptr_raw<ExprCast>>::size, UINT64_C(0xbc5b346893db35b) };
TypeInfo __type_info__93546827b32c5422 = { Type::tPointer, nullptr, nullptr, nullptr, &__type_info__898a3dd26b376c6a, nullptr, nullptr, nullptr, 0, 0, nullptr, 25632, TypeSize<smart_ptr_raw<ExprClone>>::size, UINT64_C(0x93546827b32c5422) };
TypeInfo __type_info__118bfa23ce6c000c = { Type::tPointer, nullptr, nullptr, nullptr, &__type_info__699f14ced40c8382, nullptr, nullptr, nullptr, 0, 0, nullptr, 25632, TypeSize<smart_ptr_raw<ExprConst>>::size, UINT64_C(0x118bfa23ce6c000c) };
TypeInfo __type_info__9c92a72bb3a64bfa = { Type::tPointer, nullptr, nullptr, nullptr, &__type_info__ad18450df661455f, nullptr, nullptr, nullptr, 0, 0, nullptr, 25632, TypeSize<smart_ptr_raw<ExprConstBitfield>>::size, UINT64_C(0x9c92a72bb3a64bfa) };
TypeInfo __type_info__ea252439573ea197 = { Type::tPointer, nullptr, nullptr, nullptr, &__type_info__91bbd69210f68e07, nullptr, nullptr, nullptr, 0, 0, nullptr, 25632, TypeSize<smart_ptr_raw<ExprConstBool>>::size, UINT64_C(0xea252439573ea197) };
TypeInfo __type_info__7f81cc8503986a86 = { Type::tPointer, nullptr, nullptr, nullptr, &__type_info__3ee228fe47602659, nullptr, nullptr, nullptr, 0, 0, nullptr, 25632, TypeSize<smart_ptr_raw<ExprConstDouble>>::size, UINT64_C(0x7f81cc8503986a86) };
TypeInfo __type_info__b6d18d4b3fadccd4 = { Type::tPointer, nullptr, nullptr, nullptr, &__type_info__365a0d74b6e3ae27, nullptr, nullptr, nullptr, 0, 0, nullptr, 25632, TypeSize<smart_ptr_raw<ExprConstEnumeration>>::size, UINT64_C(0xb6d18d4b3fadccd4) };
TypeInfo __type_info__4f4cc10892c6c61 = { Type::tPointer, nullptr, nullptr, nullptr, &__type_info__72bac02d9b0c1dd, nullptr, nullptr, nullptr, 0, 0, nullptr, 25632, TypeSize<smart_ptr_raw<ExprConstFloat2>>::size, UINT64_C(0x4f4cc10892c6c61) };
TypeInfo __type_info__65f51082d9833a = { Type::tPointer, nullptr, nullptr, nullptr, &__type_info__3c5ac02d6cd98dd, nullptr, nullptr, nullptr, 0, 0, nullptr, 25632, TypeSize<smart_ptr_raw<ExprConstFloat3>>::size, UINT64_C(0x65f51082d9833a) };
TypeInfo __type_info__9089610918ba11f = { Type::tPointer, nullptr, nullptr, nullptr, &__type_info__f2c7ac02c85dcbdd, nullptr, nullptr, nullptr, 0, 0, nullptr, 25632, TypeSize<smart_ptr_raw<ExprConstFloat4>>::size, UINT64_C(0x9089610918ba11f) };
TypeInfo __type_info__50c7808637778d65 = { Type::tPointer, nullptr, nullptr, nullptr, &__type_info__bfbf448dd60c6211, nullptr, nullptr, nullptr, 0, 0, nullptr, 25632, TypeSize<smart_ptr_raw<ExprConstFloat>>::size, UINT64_C(0x50c7808637778d65) };
TypeInfo __type_info__87ae85b131d91f57 = { Type::tPointer, nullptr, nullptr, nullptr, &__type_info__9307dd967ffe2b49, nullptr, nullptr, nullptr, 0, 0, nullptr, 25632, TypeSize<smart_ptr_raw<ExprConstInt16>>::size, UINT64_C(0x87ae85b131d91f57) };
TypeInfo __type_info__2d27aed7dd587c30 = { Type::tPointer, nullptr, nullptr, nullptr, &__type_info__8903e59677a2e7e1, nullptr, nullptr, nullptr, 0, 0, nullptr, 25632, TypeSize<smart_ptr_raw<ExprConstInt2>>::size, UINT64_C(0x2d27aed7dd587c30) };
TypeInfo __type_info__31b7a5d7e3ad4eb7 = { Type::tPointer, nullptr, nullptr, nullptr, &__type_info__8c69e5967a8610e1, nullptr, nullptr, nullptr, 0, 0, nullptr, 25632, TypeSize<smart_ptr_raw<ExprConstInt3>>::size, UINT64_C(0x31b7a5d7e3ad4eb7) };
TypeInfo __type_info__2914e4d7d4fafa72 = { Type::tPointer, nullptr, nullptr, nullptr, &__type_info__8237e59671dc95e1, nullptr, nullptr, nullptr, 0, 0, nullptr, 25632, TypeSize<smart_ptr_raw<ExprConstInt4>>::size, UINT64_C(0x2914e4d7d4fafa72) };
TypeInfo __type_info__773524bb75b61932 = { Type::tPointer, nullptr, nullptr, nullptr, &__type_info__7b85db966c4260e3, nullptr, nullptr, nullptr, 0, 0, nullptr, 25632, TypeSize<smart_ptr_raw<ExprConstInt64>>::size, UINT64_C(0x773524bb75b61932) };
TypeInfo __type_info__4a0758d80e688a0e = { Type::tPointer, nullptr, nullptr, nullptr, &__type_info__aaffe596948281e1, nullptr, nullptr, nullptr, 0, 0, nullptr, 25632, TypeSize<smart_ptr_raw<ExprConstInt8>>::size, UINT64_C(0x4a0758d80e688a0e) };
TypeInfo __type_info__a28688c7ffe035ce = { Type::tPointer, nullptr, nullptr, nullptr, &__type_info__108c5371ed782a25, nullptr, nullptr, nullptr, 0, 0, nullptr, 25632, TypeSize<smart_ptr_raw<ExprConstInt>>::size, UINT64_C(0xa28688c7ffe035ce) };
TypeInfo __type_info__a45346c81e6a9b80 = { Type::tPointer, nullptr, nullptr, nullptr, &__type_info__ef0e5b71d12c4f0e, nullptr, nullptr, nullptr, 0, 0, nullptr, 25632, TypeSize<smart_ptr_raw<ExprConstPtr>>::size, UINT64_C(0xa45346c81e6a9b80) };
TypeInfo __type_info__4f02b717be42f032 = { Type::tPointer, nullptr, nullptr, nullptr, &__type_info__6dfe2527715392d1, nullptr, nullptr, nullptr, 0, 0, nullptr, 25632, TypeSize<smart_ptr_raw<ExprConstRange64>>::size, UINT64_C(0x4f02b717be42f032) };
TypeInfo __type_info__214ca0a8404236ce = { Type::tPointer, nullptr, nullptr, nullptr, &__type_info__44e10b9c0b7ea95f, nullptr, nullptr, nullptr, 0, 0, nullptr, 25632, TypeSize<smart_ptr_raw<ExprConstRange>>::size, UINT64_C(0x214ca0a8404236ce) };
TypeInfo __type_info__e9cb7c9300717d9e = { Type::tPointer, nullptr, nullptr, nullptr, &__type_info__81d4b6e4402ada81, nullptr, nullptr, nullptr, 0, 0, nullptr, 25632, TypeSize<smart_ptr_raw<ExprConstString>>::size, UINT64_C(0xe9cb7c9300717d9e) };
TypeInfo __type_info__f108ab47d962e793 = { Type::tPointer, nullptr, nullptr, nullptr, &__type_info__32209cf3725705b0, nullptr, nullptr, nullptr, 0, 0, nullptr, 25632, TypeSize<smart_ptr_raw<ExprConstUInt16>>::size, UINT64_C(0xf108ab47d962e793) };
TypeInfo __type_info__514742689af99de7 = { Type::tPointer, nullptr, nullptr, nullptr, &__type_info__50a064d75d4cc1fb, nullptr, nullptr, nullptr, 0, 0, nullptr, 25632, TypeSize<smart_ptr_raw<ExprConstUInt2>>::size, UINT64_C(0x514742689af99de7) };
TypeInfo __type_info__563e42636db280e7 = { Type::tPointer, nullptr, nullptr, nullptr, &__type_info__50a063d75d4cc048, nullptr, nullptr, nullptr, 0, 0, nullptr, 25632, TypeSize<smart_ptr_raw<ExprConstUInt3>>::size, UINT64_C(0x563e42636db280e7) };
TypeInfo __type_info__a17d42718ebadfe7 = { Type::tPointer, nullptr, nullptr, nullptr, &__type_info__50a06ad75d4ccc2d, nullptr, nullptr, nullptr, 0, 0, nullptr, 25632, TypeSize<smart_ptr_raw<ExprConstUInt4>>::size, UINT64_C(0xa17d42718ebadfe7) };
TypeInfo __type_info__63e1b8a29ad93469 = { Type::tPointer, nullptr, nullptr, nullptr, &__type_info__2b5f1ef36c99e51b, nullptr, nullptr, nullptr, 0, 0, nullptr, 25632, TypeSize<smart_ptr_raw<ExprConstUInt64>>::size, UINT64_C(0x63e1b8a29ad93469) };
TypeInfo __type_info__f6614284ea50cbe7 = { Type::tPointer, nullptr, nullptr, nullptr, &__type_info__50a05ed75d4cb7c9, nullptr, nullptr, nullptr, 0, 0, nullptr, 25632, TypeSize<smart_ptr_raw<ExprConstUInt8>>::size, UINT64_C(0xf6614284ea50cbe7) };
TypeInfo __type_info__518dd4a2ad91defd = { Type::tPointer, nullptr, nullptr, nullptr, &__type_info__50ca60d75d94192f, nullptr, nullptr, nullptr, 0, 0, nullptr, 25632, TypeSize<smart_ptr_raw<ExprConstUInt>>::size, UINT64_C(0x518dd4a2ad91defd) };
TypeInfo __type_info__b8524aede8fd2575 = { Type::tPointer, nullptr, nullptr, nullptr, &__type_info__ee05ad47ac112e5f, nullptr, nullptr, nullptr, 0, 0, nullptr, 25632, TypeSize<smart_ptr_raw<ExprConstURange64>>::size, UINT64_C(0xb8524aede8fd2575) };
TypeInfo __type_info__d2fee6b26665c989 = { Type::tPointer, nullptr, nullptr, nullptr, &__type_info__a1fe7a142c668903, nullptr, nullptr, nullptr, 0, 0, nullptr, 25632, TypeSize<smart_ptr_raw<ExprConstURange>>::size, UINT64_C(0xd2fee6b26665c989) };
TypeInfo __type_info__5b91ede0508873e = { Type::tPointer, nullptr, nullptr, nullptr, &__type_info__37bd8d7fdf3c5374, nullptr, nullptr, nullptr, 0, 0, nullptr, 25632, TypeSize<smart_ptr_raw<ExprContinue>>::size, UINT64_C(0x5b91ede0508873e) };
TypeInfo __type_info__350b375c34e0c48a = { Type::tPointer, nullptr, nullptr, nullptr, &__type_info__10fefde527f0e316, nullptr, nullptr, nullptr, 0, 0, nullptr, 25632, TypeSize<smart_ptr_raw<ExprCopy>>::size, UINT64_C(0x350b375c34e0c48a) };
TypeInfo __type_info__c84cf5ded2cd1cd8 = { Type::tPointer, nullptr, nullptr, nullptr, &__type_info__8ea2bb6c84fe54ae, nullptr, nullptr, nullptr, 0, 0, nullptr, 25632, TypeSize<smart_ptr_raw<ExprDebug>>::size, UINT64_C(0xc84cf5ded2cd1cd8) };
TypeInfo __type_info__120723ecb6510065 = { Type::tPointer, nullptr, nullptr, nullptr, &__type_info__643b022638807dc3, nullptr, nullptr, nullptr, 0, 0, nullptr, 25632, TypeSize<smart_ptr_raw<ExprDelete>>::size, UINT64_C(0x120723ecb6510065) };
TypeInfo __type_info__e672712e93e236ba = { Type::tPointer, nullptr, nullptr, nullptr, &__type_info__e166b9c4a79e779, nullptr, nullptr, nullptr, 0, 0, nullptr, 25632, TypeSize<smart_ptr_raw<ExprErase>>::size, UINT64_C(0xe672712e93e236ba) };
TypeInfo __type_info__3229d47464f4ad50 = { Type::tPointer, nullptr, nullptr, nullptr, &__type_info__a3d5bceeff53f155, nullptr, nullptr, nullptr, 0, 0, nullptr, 25632, TypeSize<smart_ptr_raw<ExprFakeContext>>::size, UINT64_C(0x3229d47464f4ad50) };
TypeInfo __type_info__511818eae83f8137 = { Type::tPointer, nullptr, nullptr, nullptr, &__type_info__f85f434a5cfa7cf9, nullptr, nullptr, nullptr, 0, 0, nullptr, 25632, TypeSize<smart_ptr_raw<ExprFakeLineInfo>>::size, UINT64_C(0x511818eae83f8137) };
TypeInfo __type_info__849126a4e3db3268 = { Type::tPointer, nullptr, nullptr, nullptr, &__type_info__c1ab66e04afa3a7, nullptr, nullptr, nullptr, 0, 0, nullptr, 25632, TypeSize<smart_ptr_raw<ExprField>>::size, UINT64_C(0x849126a4e3db3268) };
TypeInfo __type_info__ee83d76e6f9a3c81 = { Type::tPointer, nullptr, nullptr, nullptr, &__type_info__b8cb16fdfafa869b, nullptr, nullptr, nullptr, 0, 0, nullptr, 25632, TypeSize<smart_ptr_raw<ExprFind>>::size, UINT64_C(0xee83d76e6f9a3c81) };
TypeInfo __type_info__9745884abdafbe87 = { Type::tPointer, nullptr, nullptr, nullptr, &__type_info__598840fdaa05c3ef, nullptr, nullptr, nullptr, 0, 0, nullptr, 25632, TypeSize<smart_ptr_raw<ExprFor>>::size, UINT64_C(0x9745884abdafbe87) };
TypeInfo __type_info__41023c185ec41d2 = { Type::tPointer, nullptr, nullptr, nullptr, &__type_info__aa2eff9e8711b4c, nullptr, nullptr, nullptr, 0, 0, nullptr, 25632, TypeSize<smart_ptr_raw<ExprGoto>>::size, UINT64_C(0x41023c185ec41d2) };
TypeInfo __type_info__88db72c3eb8c93b1 = { Type::tPointer, nullptr, nullptr, nullptr, &__type_info__833e12e4dcd8153d, nullptr, nullptr, nullptr, 0, 0, nullptr, 25632, TypeSize<smart_ptr_raw<ExprIfThenElse>>::size, UINT64_C(0x88db72c3eb8c93b1) };
TypeInfo __type_info__c3c8c780df6c5865 = { Type::tPointer, nullptr, nullptr, nullptr, &__type_info__f1f05ee81890b310, nullptr, nullptr, nullptr, 0, 0, nullptr, 25632, TypeSize<smart_ptr_raw<ExprInvoke>>::size, UINT64_C(0xc3c8c780df6c5865) };
TypeInfo __type_info__8a5e2edb26418a2a = { Type::tPointer, nullptr, nullptr, nullptr, &__type_info__afca8289899d784f, nullptr, nullptr, nullptr, 0, 0, nullptr, 25632, TypeSize<smart_ptr_raw<ExprIs>>::size, UINT64_C(0x8a5e2edb26418a2a) };
TypeInfo __type_info__837624c70f8f1fa1 = { Type::tPointer, nullptr, nullptr, nullptr, &__type_info__725600cc59f9ef1, nullptr, nullptr, nullptr, 0, 0, nullptr, 25632, TypeSize<smart_ptr_raw<ExprIsVariant>>::size, UINT64_C(0x837624c70f8f1fa1) };
TypeInfo __type_info__7f9fc2c601e28df1 = { Type::tPointer, nullptr, nullptr, nullptr, &__type_info__5a876ec502d05cd5, nullptr, nullptr, nullptr, 0, 0, nullptr, 25632, TypeSize<smart_ptr_raw<ExprKeyExists>>::size, UINT64_C(0x7f9fc2c601e28df1) };
TypeInfo __type_info__6ad276912e16c445 = { Type::tPointer, nullptr, nullptr, nullptr, &__type_info__a8d3190cd853597a, nullptr, nullptr, nullptr, 0, 0, nullptr, 25632, TypeSize<smart_ptr_raw<ExprLabel>>::size, UINT64_C(0x6ad276912e16c445) };
TypeInfo __type_info__349161eed600549f = { Type::tPointer, nullptr, nullptr, nullptr, &__type_info__b3d9c0cc943b4165, nullptr, nullptr, nullptr, 0, 0, nullptr, 25632, TypeSize<smart_ptr_raw<ExprLet>>::size, UINT64_C(0x349161eed600549f) };
TypeInfo __type_info__8faf3ae8c5ebe47a = { Type::tPointer, nullptr, nullptr, nullptr, &__type_info__d07c067a5c7b8ff4, nullptr, nullptr, nullptr, 0, 0, nullptr, 25632, TypeSize<smart_ptr_raw<ExprLooksLikeCall>>::size, UINT64_C(0x8faf3ae8c5ebe47a) };
TypeInfo __type_info__f44650fbe99befd9 = { Type::tPointer, nullptr, nullptr, nullptr, &__type_info__7260bd93a15a7ff1, nullptr, nullptr, nullptr, 0, 0, nullptr, 25632, TypeSize<smart_ptr_raw<ExprMakeArray>>::size, UINT64_C(0xf44650fbe99befd9) };
TypeInfo __type_info__e0b574ceb6c8c70f = { Type::tPointer, nullptr, nullptr, nullptr, &__type_info__e9813cd85e320ce1, nullptr, nullptr, nullptr, 0, 0, nullptr, 25632, TypeSize<smart_ptr_raw<ExprMakeBlock>>::size, UINT64_C(0xe0b574ceb6c8c70f) };
TypeInfo __type_info__6c1a6b092c78a88 = { Type::tPointer, nullptr, nullptr, nullptr, &__type_info__644a49dea6863e78, nullptr, nullptr, nullptr, 0, 0, nullptr, 25632, TypeSize<smart_ptr_raw<ExprMakeGenerator>>::size, UINT64_C(0x6c1a6b092c78a88) };
TypeInfo __type_info__5276a743108434eb = { Type::tPointer, nullptr, nullptr, nullptr, &__type_info__b6c344d07fc80acd, nullptr, nullptr, nullptr, 0, 0, nullptr, 25632, TypeSize<smart_ptr_raw<ExprMakeStruct>>::size, UINT64_C(0x5276a743108434eb) };
TypeInfo __type_info__ea03eef331aabf4 = { Type::tPointer, nullptr, nullptr, nullptr, &__type_info__94e15ebe6d2ac6c5, nullptr, nullptr, nullptr, 0, 0, nullptr, 25632, TypeSize<smart_ptr_raw<ExprMakeTuple>>::size, UINT64_C(0xea03eef331aabf4) };
TypeInfo __type_info__4191dbf23146a87e = { Type::tPointer, nullptr, nullptr, nullptr, &__type_info__749bdb083606521a, nullptr, nullptr, nullptr, 0, 0, nullptr, 25632, TypeSize<smart_ptr_raw<ExprMakeVariant>>::size, UINT64_C(0x4191dbf23146a87e) };
TypeInfo __type_info__f66cc598ea369f61 = { Type::tPointer, nullptr, nullptr, nullptr, &__type_info__bbedea2da76c1cbd, nullptr, nullptr, nullptr, 0, 0, nullptr, 25632, TypeSize<smart_ptr_raw<ExprMemZero>>::size, UINT64_C(0xf66cc598ea369f61) };
TypeInfo __type_info__c19751d6d5da74e2 = { Type::tPointer, nullptr, nullptr, nullptr, &__type_info__6508f9c8d2b82c4a, nullptr, nullptr, nullptr, 0, 0, nullptr, 25632, TypeSize<smart_ptr_raw<ExprMove>>::size, UINT64_C(0xc19751d6d5da74e2) };
TypeInfo __type_info__44cd26f4cb3df7e1 = { Type::tPointer, nullptr, nullptr, nullptr, &__type_info__c88d1b35f2ffa823, nullptr, nullptr, nullptr, 0, 0, nullptr, 25632, TypeSize<smart_ptr_raw<ExprNamedCall>>::size, UINT64_C(0x44cd26f4cb3df7e1) };
TypeInfo __type_info__5d6138f13e1e88c4 = { Type::tPointer, nullptr, nullptr, nullptr, &__type_info__f14dc0d72b72a465, nullptr, nullptr, nullptr, 0, 0, nullptr, 25632, TypeSize<smart_ptr_raw<ExprNew>>::size, UINT64_C(0x5d6138f13e1e88c4) };
TypeInfo __type_info__e7e2063b91ac55a1 = { Type::tPointer, nullptr, nullptr, nullptr, &__type_info__e4bc23ea0da25d79, nullptr, nullptr, nullptr, 0, 0, nullptr, 25632, TypeSize<smart_ptr_raw<ExprNullCoalescing>>::size, UINT64_C(0xe7e2063b91ac55a1) };
TypeInfo __type_info__c7c0e4fba3dcbfcf = { Type::tPointer, nullptr, nullptr, nullptr, &__type_info__b4d3bed2a010acf4, nullptr, nullptr, nullptr, 0, 0, nullptr, 25632, TypeSize<smart_ptr_raw<ExprOp1>>::size, UINT64_C(0xc7c0e4fba3dcbfcf) };
TypeInfo __type_info__c5915ffba474f7fe = { Type::tPointer, nullptr, nullptr, nullptr, &__type_info__b839bed2a2f3d5f4, nullptr, nullptr, nullptr, 0, 0, nullptr, 25632, TypeSize<smart_ptr_raw<ExprOp2>>::size, UINT64_C(0xc5915ffba474f7fe) };
TypeInfo __type_info__ca2136fbaac99425 = { Type::tPointer, nullptr, nullptr, nullptr, &__type_info__bb9fbed2a5d6fef4, nullptr, nullptr, nullptr, 0, 0, nullptr, 25632, TypeSize<smart_ptr_raw<ExprOp3>>::size, UINT64_C(0xca2136fbaac99425) };
TypeInfo __type_info__7d9fd489616ae8d = { Type::tPointer, nullptr, nullptr, nullptr, &__type_info__b0f72e776d005eaf, nullptr, nullptr, nullptr, 0, 0, nullptr, 25632, TypeSize<smart_ptr_raw<ExprPtr2Ref>>::size, UINT64_C(0x7d9fd489616ae8d) };
TypeInfo __type_info__9dfe8a83730428c8 = { Type::tPointer, nullptr, nullptr, nullptr, &__type_info__29261b9b611e6f1b, nullptr, nullptr, nullptr, 0, 0, nullptr, 25632, TypeSize<smart_ptr_raw<ExprQuote>>::size, UINT64_C(0x9dfe8a83730428c8) };
TypeInfo __type_info__6628bcbce7db6a7d = { Type::tPointer, nullptr, nullptr, nullptr, &__type_info__64b15f9df38db54f, nullptr, nullptr, nullptr, 0, 0, nullptr, 25632, TypeSize<smart_ptr_raw<ExprReader>>::size, UINT64_C(0x6628bcbce7db6a7d) };
TypeInfo __type_info__1151bc4127672205 = { Type::tPointer, nullptr, nullptr, nullptr, &__type_info__d27a1f910d191ab3, nullptr, nullptr, nullptr, 0, 0, nullptr, 25632, TypeSize<smart_ptr_raw<ExprRef2Ptr>>::size, UINT64_C(0x1151bc4127672205) };
TypeInfo __type_info__bba83b75d4855b7e = { Type::tPointer, nullptr, nullptr, nullptr, &__type_info__6dc5617548466ef3, nullptr, nullptr, nullptr, 0, 0, nullptr, 25632, TypeSize<smart_ptr_raw<ExprRef2Value>>::size, UINT64_C(0xbba83b75d4855b7e) };
TypeInfo __type_info__1a5b7f11cf3fb5b5 = { Type::tPointer, nullptr, nullptr, nullptr, &__type_info__15a45142a97c9b3e, nullptr, nullptr, nullptr, 0, 0, nullptr, 25632, TypeSize<smart_ptr_raw<ExprReturn>>::size, UINT64_C(0x1a5b7f11cf3fb5b5) };
TypeInfo __type_info__45d77ccae958b9de = { Type::tPointer, nullptr, nullptr, nullptr, &__type_info__cfc6c6515483a76b, nullptr, nullptr, nullptr, 0, 0, nullptr, 25632, TypeSize<smart_ptr_raw<ExprSafeAsVariant>>::size, UINT64_C(0x45d77ccae958b9de) };
TypeInfo __type_info__b5e62a55ec68b6b5 = { Type::tPointer, nullptr, nullptr, nullptr, &__type_info__a87ef47d40240d3c, nullptr, nullptr, nullptr, 0, 0, nullptr, 25632, TypeSize<smart_ptr_raw<ExprSafeAt>>::size, UINT64_C(0xb5e62a55ec68b6b5) };
TypeInfo __type_info__a7adf4b0a367d897 = { Type::tPointer, nullptr, nullptr, nullptr, &__type_info__10ddfd98f14d71c1, nullptr, nullptr, nullptr, 0, 0, nullptr, 25632, TypeSize<smart_ptr_raw<ExprSafeField>>::size, UINT64_C(0xa7adf4b0a367d897) };
TypeInfo __type_info__9c37565e66334661 = { Type::tPointer, nullptr, nullptr, nullptr, &__type_info__4396458b6cca487d, nullptr, nullptr, nullptr, 0, 0, nullptr, 25632, TypeSize<smart_ptr_raw<ExprSetInsert>>::size, UINT64_C(0x9c37565e66334661) };
TypeInfo __type_info__74372feec5a81686 = { Type::tPointer, nullptr, nullptr, nullptr, &__type_info__7a94f4cc4bcf20e5, nullptr, nullptr, nullptr, 0, 0, nullptr, 25632, TypeSize<smart_ptr_raw<ExprStaticAssert>>::size, UINT64_C(0x74372feec5a81686) };
TypeInfo __type_info__4e7dff8bb14f539 = { Type::tPointer, nullptr, nullptr, nullptr, &__type_info__278bc6d46dadffa8, nullptr, nullptr, nullptr, 0, 0, nullptr, 25632, TypeSize<smart_ptr_raw<ExprStringBuilder>>::size, UINT64_C(0x4e7dff8bb14f539) };
TypeInfo __type_info__6bb94e24ea14ce9a = { Type::tPointer, nullptr, nullptr, nullptr, &__type_info__da0e82cafc1e70b1, nullptr, nullptr, nullptr, 0, 0, nullptr, 25632, TypeSize<smart_ptr_raw<ExprSwizzle>>::size, UINT64_C(0x6bb94e24ea14ce9a) };
TypeInfo __type_info__631c9e15ba7d5036 = { Type::tPointer, nullptr, nullptr, nullptr, &__type_info__7b55c0a63e321fc1, nullptr, nullptr, nullptr, 0, 0, nullptr, 25632, TypeSize<smart_ptr_raw<ExprTag>>::size, UINT64_C(0x631c9e15ba7d5036) };
TypeInfo __type_info__c1c6f9bc0741f232 = { Type::tPointer, nullptr, nullptr, nullptr, &__type_info__5e2809979d5f78c9, nullptr, nullptr, nullptr, 0, 0, nullptr, 25632, TypeSize<smart_ptr_raw<ExprTryCatch>>::size, UINT64_C(0xc1c6f9bc0741f232) };
TypeInfo __type_info__3b037c8d587730b0 = { Type::tPointer, nullptr, nullptr, nullptr, &__type_info__60a144dd7cf1ba91, nullptr, nullptr, nullptr, 0, 0, nullptr, 25632, TypeSize<smart_ptr_raw<ExprTypeDecl>>::size, UINT64_C(0x3b037c8d587730b0) };
TypeInfo __type_info__563543a880fdcea2 = { Type::tPointer, nullptr, nullptr, nullptr, &__type_info__c15e41a8ee5ebf97, nullptr, nullptr, nullptr, 0, 0, nullptr, 25632, TypeSize<smart_ptr_raw<ExprTypeInfo>>::size, UINT64_C(0x563543a880fdcea2) };
TypeInfo __type_info__eb22258b16c8c6df = { Type::tPointer, nullptr, nullptr, nullptr, &__type_info__a88454b76bb549ba, nullptr, nullptr, nullptr, 0, 0, nullptr, 25632, TypeSize<smart_ptr_raw<ExprUnsafe>>::size, UINT64_C(0xeb22258b16c8c6df) };
TypeInfo __type_info__f5c1d1c41d788f7 = { Type::tPointer, nullptr, nullptr, nullptr, &__type_info__811c0b03f452ec1, nullptr, nullptr, nullptr, 0, 0, nullptr, 25632, TypeSize<smart_ptr_raw<ExprVar>>::size, UINT64_C(0xf5c1d1c41d788f7) };
TypeInfo __type_info__9cac32b4050a2fb8 = { Type::tPointer, nullptr, nullptr, nullptr, &__type_info__51f018132be6c64, nullptr, nullptr, nullptr, 0, 0, nullptr, 25632, TypeSize<smart_ptr_raw<ExprWhile>>::size, UINT64_C(0x9cac32b4050a2fb8) };
TypeInfo __type_info__c758d466d1a06ae2 = { Type::tPointer, nullptr, nullptr, nullptr, &__type_info__b99012ac7e42bacf, nullptr, nullptr, nullptr, 0, 0, nullptr, 25632, TypeSize<smart_ptr_raw<ExprWith>>::size, UINT64_C(0xc758d466d1a06ae2) };
TypeInfo __type_info__60501e84f49c29e1 = { Type::tPointer, nullptr, nullptr, nullptr, &__type_info__8873b51c25d24aa7, nullptr, nullptr, nullptr, 0, 0, nullptr, 25632, TypeSize<smart_ptr_raw<ExprYield>>::size, UINT64_C(0x60501e84f49c29e1) };
TypeInfo __type_info__2dd484863625d80 = { Type::tPointer, nullptr, nullptr, nullptr, &__type_info__960dd6428887a234, nullptr, nullptr, nullptr, 0, 0, nullptr, 25632, TypeSize<smart_ptr_raw<Expression>>::size, UINT64_C(0x2dd484863625d80) };
TypeInfo __type_info__34b7c04894c15d5 = { Type::tPointer, nullptr, nullptr, nullptr, &__type_info__a57bf935c2dd03, nullptr, nullptr, nullptr, 0, 0, nullptr, 24620, TypeSize<Function *>::size, UINT64_C(0x34b7c04894c15d5) };
TypeInfo __type_info__f9220d94c6b964b5 = { Type::tPointer, nullptr, nullptr, nullptr, &__type_info__60d16a2d23420951, nullptr, nullptr, nullptr, 0, 0, nullptr, 24620, TypeSize<Structure *>::size, UINT64_C(0xf9220d94c6b964b5) };
TypeInfo __type_info__79c6e4b278757551 = { Type::tPointer, nullptr, nullptr, nullptr, &__type_info__ccd32e474e9a33eb, nullptr, nullptr, nullptr, 0, 0, nullptr, 24620, TypeSize<Variable *>::size, UINT64_C(0x79c6e4b278757551) };
TypeInfo __type_info__e266b5ccef058802 = { Type::tPointer, nullptr, nullptr, nullptr, &__type_info__8afce1a80940fc9e, nullptr, nullptr, nullptr, 0, 0, nullptr, 8236, TypeSize<Module *>::size, UINT64_C(0xe266b5ccef058802) };
TypeInfo __type_info__624d371c76b25aa4 = { Type::tHandle, nullptr, nullptr, DAS_MAKE_ANNOTATION("~$::das_string"), nullptr, nullptr, nullptr, nullptr, 0, 0, nullptr, 34, TypeSize<das::string>::size, UINT64_C(0x624d371c76b25aa4) };
TypeInfo __type_info__29c0090cdbf7525c = { Type::tHandle, nullptr, nullptr, DAS_MAKE_ANNOTATION("~ast::FieldDeclaration"), nullptr, nullptr, nullptr, nullptr, 0, 0, nullptr, 24610, TypeSize<Structure::FieldDeclaration>::size, UINT64_C(0x29c0090cdbf7525c) };
TypeInfo __type_info__586f0da79a6e613d = { Type::tPointer, nullptr, nullptr, nullptr, &__type_info__cd505ad3b1c59cc6, nullptr, nullptr, nullptr, 0, 0, nullptr, 25632, TypeSize<smart_ptr_raw<Enumeration>>::size, UINT64_C(0x586f0da79a6e613d) };
TypeInfo __type_info__98064c57b4bcca5a = { Type::tPointer, nullptr, nullptr, nullptr, &__type_info__960dd6428887a234, nullptr, nullptr, nullptr, 0, 0, nullptr, 25632, TypeSize<smart_ptr_raw<Expression>>::size, UINT64_C(0x98064c57b4bcca5a) };
TypeInfo __type_info__9d10785eb07580e0 = { Type::tPointer, nullptr, nullptr, nullptr, &__type_info__a57bf935c2dd03, nullptr, nullptr, nullptr, 0, 0, nullptr, 25632, TypeSize<smart_ptr_raw<Function>>::size, UINT64_C(0x9d10785eb07580e0) };
TypeInfo __type_info__9a5e492166d49949 = { Type::tPointer, nullptr, nullptr, nullptr, &__type_info__acd33335f9c1e498, nullptr, nullptr, nullptr, 0, 0, nullptr, 25632, TypeSize<smart_ptr_raw<MakeFieldDecl>>::size, UINT64_C(0x9a5e492166d49949) };
TypeInfo __type_info__e57b0f261f47b890 = { Type::tPointer, nullptr, nullptr, nullptr, &__type_info__125855d9cd771ead, nullptr, nullptr, nullptr, 0, 0, nullptr, 9248, TypeSize<smart_ptr_raw<Program>>::size, UINT64_C(0xe57b0f261f47b890) };
TypeInfo __type_info__d6b8ed05d16e9f27 = { Type::tPointer, nullptr, nullptr, nullptr, &__type_info__60d16a2d23420951, nullptr, nullptr, nullptr, 0, 0, nullptr, 25632, TypeSize<smart_ptr_raw<Structure>>::size, UINT64_C(0xd6b8ed05d16e9f27) };
TypeInfo __type_info__defb2f7795e0cf8c = { Type::tPointer, nullptr, nullptr, nullptr, &__type_info__ce241e3005cc873b, nullptr, nullptr, nullptr, 0, 0, nullptr, 25632, TypeSize<smart_ptr_raw<TypeDecl>>::size, UINT64_C(0xdefb2f7795e0cf8c) };
TypeInfo __type_info__a3a6bcfebaf8fcd8 = { Type::tPointer, nullptr, nullptr, nullptr, &__type_info__ccd32e474e9a33eb, nullptr, nullptr, nullptr, 0, 0, nullptr, 25632, TypeSize<smart_ptr_raw<Variable>>::size, UINT64_C(0xa3a6bcfebaf8fcd8) };
TypeInfo __type_info__af81fe4c86352052 = { Type::tBool, nullptr, nullptr, nullptr, nullptr, nullptr, nullptr, nullptr, 0, 0, nullptr, 60, TypeSize<bool>::size, UINT64_C(0xaf81fe4c86352052) };
TypeInfo __type_info__af8afe4c86446b52 = { Type::tInt, nullptr, nullptr, nullptr, nullptr, nullptr, nullptr, nullptr, 0, 0, nullptr, 60, TypeSize<int32_t>::size, UINT64_C(0xaf8afe4c86446b52) };
TypeInfo __type_info__cd505ad3b1c59cc6 = { Type::tHandle, nullptr, nullptr, DAS_MAKE_ANNOTATION("~ast::Enumeration"), nullptr, nullptr, nullptr, nullptr, 0, 0, nullptr, 24578, TypeSize<Enumeration>::size, UINT64_C(0xcd505ad3b1c59cc6) };
TypeInfo __type_info__7329fadda4ca251c = { Type::tHandle, nullptr, nullptr, DAS_MAKE_ANNOTATION("~ast::ExprAddr"), nullptr, nullptr, nullptr, nullptr, 0, 0, nullptr, 24578, TypeSize<ExprAddr>::size, UINT64_C(0x7329fadda4ca251c) };
TypeInfo __type_info__3693bdfd1150bb56 = { Type::tHandle, nullptr, nullptr, DAS_MAKE_ANNOTATION("~ast::ExprArrayComprehension"), nullptr, nullptr, nullptr, nullptr, 0, 0, nullptr, 24578, TypeSize<ExprArrayComprehension>::size, UINT64_C(0x3693bdfd1150bb56) };
TypeInfo __type_info__71ff6f045d2186f1 = { Type::tHandle, nullptr, nullptr, DAS_MAKE_ANNOTATION("~ast::ExprAsVariant"), nullptr, nullptr, nullptr, nullptr, 0, 0, nullptr, 24578, TypeSize<ExprAsVariant>::size, UINT64_C(0x71ff6f045d2186f1) };
TypeInfo __type_info__acc5cdadba98f68e = { Type::tHandle, nullptr, nullptr, DAS_MAKE_ANNOTATION("~ast::ExprAscend"), nullptr, nullptr, nullptr, nullptr, 0, 0, nullptr, 24578, TypeSize<ExprAscend>::size, UINT64_C(0xacc5cdadba98f68e) };
TypeInfo __type_info__2055bdfdcee6bf5e = { Type::tHandle, nullptr, nullptr, DAS_MAKE_ANNOTATION("~ast::ExprAssert"), nullptr, nullptr, nullptr, nullptr, 0, 0, nullptr, 24578, TypeSize<ExprAssert>::size, UINT64_C(0x2055bdfdcee6bf5e) };
TypeInfo __type_info__fb56aefdaf9de951 = { Type::tHandle, nullptr, nullptr, DAS_MAKE_ANNOTATION("~ast::ExprAssume"), nullptr, nullptr, nullptr, nullptr, 0, 0, nullptr, 24578, TypeSize<ExprAssume>::size, UINT64_C(0xfb56aefdaf9de951) };
TypeInfo __type_info__cb4a7f89a13eab36 = { Type::tHandle, nullptr, nullptr, DAS_MAKE_ANNOTATION("~ast::ExprAt"), nullptr, nullptr, nullptr, nullptr, 0, 0, nullptr, 24578, TypeSize<ExprAt>::size, UINT64_C(0xcb4a7f89a13eab36) };
TypeInfo __type_info__71c84a7f531ca5bb = { Type::tHandle, nullptr, nullptr, DAS_MAKE_ANNOTATION("~ast::ExprBlock"), nullptr, nullptr, nullptr, nullptr, 0, 0, nullptr, 24578, TypeSize<ExprBlock>::size, UINT64_C(0x71c84a7f531ca5bb) };
TypeInfo __type_info__afd7e462d2caeebb = { Type::tHandle, nullptr, nullptr, DAS_MAKE_ANNOTATION("~ast::ExprBreak"), nullptr, nullptr, nullptr, nullptr, 0, 0, nullptr, 24578, TypeSize<ExprBreak>::size, UINT64_C(0xafd7e462d2caeebb) };
TypeInfo __type_info__54fceee561bff5eb = { Type::tHandle, nullptr, nullptr, DAS_MAKE_ANNOTATION("~ast::ExprCall"), nullptr, nullptr, nullptr, nullptr, 0, 0, nullptr, 24578, TypeSize<ExprCall>::size, UINT64_C(0x54fceee561bff5eb) };
TypeInfo __type_info__a0219258cb3926ee = { Type::tHandle, nullptr, nullptr, DAS_MAKE_ANNOTATION("~ast::ExprCallMacro"), nullptr, nullptr, nullptr, nullptr, 0, 0, nullptr, 24578, TypeSize<ExprCallMacro>::size, UINT64_C(0xa0219258cb3926ee) };
TypeInfo __type_info__1afef6e5304b2283 = { Type::tHandle, nullptr, nullptr, DAS_MAKE_ANNOTATION("~ast::ExprCast"), nullptr, nullptr, nullptr, nullptr, 0, 0, nullptr, 24578, TypeSize<ExprCast>::size, UINT64_C(0x1afef6e5304b2283) };
TypeInfo __type_info__898a3dd26b376c6a = { Type::tHandle, nullptr, nullptr, DAS_MAKE_ANNOTATION("~ast::ExprClone"), nullptr, nullptr, nullptr, nullptr, 0, 0, nullptr, 24578, TypeSize<ExprClone>::size, UINT64_C(0x898a3dd26b376c6a) };
TypeInfo __type_info__699f14ced40c8382 = { Type::tHandle, nullptr, nullptr, DAS_MAKE_ANNOTATION("~ast::ExprConst"), nullptr, nullptr, nullptr, nullptr, 0, 0, nullptr, 24578, TypeSize<ExprConst>::size, UINT64_C(0x699f14ced40c8382) };
TypeInfo __type_info__ad18450df661455f = { Type::tHandle, nullptr, nullptr, DAS_MAKE_ANNOTATION("~ast::ExprConstBitfield"), nullptr, nullptr, nullptr, nullptr, 0, 0, nullptr, 24578, TypeSize<ExprConstBitfield>::size, UINT64_C(0xad18450df661455f) };
TypeInfo __type_info__91bbd69210f68e07 = { Type::tHandle, nullptr, nullptr, DAS_MAKE_ANNOTATION("~ast::ExprConstBool"), nullptr, nullptr, nullptr, nullptr, 0, 0, nullptr, 24578, TypeSize<ExprConstBool>::size, UINT64_C(0x91bbd69210f68e07) };
TypeInfo __type_info__3ee228fe47602659 = { Type::tHandle, nullptr, nullptr, DAS_MAKE_ANNOTATION("~ast::ExprConstDouble"), nullptr, nullptr, nullptr, nullptr, 0, 0, nullptr, 24578, TypeSize<ExprConstDouble>::size, UINT64_C(0x3ee228fe47602659) };
TypeInfo __type_info__365a0d74b6e3ae27 = { Type::tHandle, nullptr, nullptr, DAS_MAKE_ANNOTATION("~ast::ExprConstEnumeration"), nullptr, nullptr, nullptr, nullptr, 0, 0, nullptr, 24578, TypeSize<ExprConstEnumeration>::size, UINT64_C(0x365a0d74b6e3ae27) };
TypeInfo __type_info__72bac02d9b0c1dd = { Type::tHandle, nullptr, nullptr, DAS_MAKE_ANNOTATION("~ast::ExprConstFloat2"), nullptr, nullptr, nullptr, nullptr, 0, 0, nullptr, 24578, TypeSize<ExprConstFloat2>::size, UINT64_C(0x72bac02d9b0c1dd) };
TypeInfo __type_info__3c5ac02d6cd98dd = { Type::tHandle, nullptr, nullptr, DAS_MAKE_ANNOTATION("~ast::ExprConstFloat3"), nullptr, nullptr, nullptr, nullptr, 0, 0, nullptr, 24578, TypeSize<ExprConstFloat3>::size, UINT64_C(0x3c5ac02d6cd98dd) };
TypeInfo __type_info__f2c7ac02c85dcbdd = { Type::tHandle, nullptr, nullptr, DAS_MAKE_ANNOTATION("~ast::ExprConstFloat4"), nullptr, nullptr, nullptr, nullptr, 0, 0, nullptr, 24578, TypeSize<ExprConstFloat4>::size, UINT64_C(0xf2c7ac02c85dcbdd) };
TypeInfo __type_info__bfbf448dd60c6211 = { Type::tHandle, nullptr, nullptr, DAS_MAKE_ANNOTATION("~ast::ExprConstFloat"), nullptr, nullptr, nullptr, nullptr, 0, 0, nullptr, 24578, TypeSize<ExprConstFloat>::size, UINT64_C(0xbfbf448dd60c6211) };
TypeInfo __type_info__9307dd967ffe2b49 = { Type::tHandle, nullptr, nullptr, DAS_MAKE_ANNOTATION("~ast::ExprConstInt16"), nullptr, nullptr, nullptr, nullptr, 0, 0, nullptr, 24578, TypeSize<ExprConstInt16>::size, UINT64_C(0x9307dd967ffe2b49) };
TypeInfo __type_info__8903e59677a2e7e1 = { Type::tHandle, nullptr, nullptr, DAS_MAKE_ANNOTATION("~ast::ExprConstInt2"), nullptr, nullptr, nullptr, nullptr, 0, 0, nullptr, 24578, TypeSize<ExprConstInt2>::size, UINT64_C(0x8903e59677a2e7e1) };
TypeInfo __type_info__8c69e5967a8610e1 = { Type::tHandle, nullptr, nullptr, DAS_MAKE_ANNOTATION("~ast::ExprConstInt3"), nullptr, nullptr, nullptr, nullptr, 0, 0, nullptr, 24578, TypeSize<ExprConstInt3>::size, UINT64_C(0x8c69e5967a8610e1) };
TypeInfo __type_info__8237e59671dc95e1 = { Type::tHandle, nullptr, nullptr, DAS_MAKE_ANNOTATION("~ast::ExprConstInt4"), nullptr, nullptr, nullptr, nullptr, 0, 0, nullptr, 24578, TypeSize<ExprConstInt4>::size, UINT64_C(0x8237e59671dc95e1) };
TypeInfo __type_info__7b85db966c4260e3 = { Type::tHandle, nullptr, nullptr, DAS_MAKE_ANNOTATION("~ast::ExprConstInt64"), nullptr, nullptr, nullptr, nullptr, 0, 0, nullptr, 24578, TypeSize<ExprConstInt64>::size, UINT64_C(0x7b85db966c4260e3) };
TypeInfo __type_info__aaffe596948281e1 = { Type::tHandle, nullptr, nullptr, DAS_MAKE_ANNOTATION("~ast::ExprConstInt8"), nullptr, nullptr, nullptr, nullptr, 0, 0, nullptr, 24578, TypeSize<ExprConstInt8>::size, UINT64_C(0xaaffe596948281e1) };
TypeInfo __type_info__108c5371ed782a25 = { Type::tHandle, nullptr, nullptr, DAS_MAKE_ANNOTATION("~ast::ExprConstInt"), nullptr, nullptr, nullptr, nullptr, 0, 0, nullptr, 24578, TypeSize<ExprConstInt>::size, UINT64_C(0x108c5371ed782a25) };
TypeInfo __type_info__ef0e5b71d12c4f0e = { Type::tHandle, nullptr, nullptr, DAS_MAKE_ANNOTATION("~ast::ExprConstPtr"), nullptr, nullptr, nullptr, nullptr, 0, 0, nullptr, 24578, TypeSize<ExprConstPtr>::size, UINT64_C(0xef0e5b71d12c4f0e) };
TypeInfo __type_info__6dfe2527715392d1 = { Type::tHandle, nullptr, nullptr, DAS_MAKE_ANNOTATION("~ast::ExprConstRange64"), nullptr, nullptr, nullptr, nullptr, 0, 0, nullptr, 24578, TypeSize<ExprConstRange64>::size, UINT64_C(0x6dfe2527715392d1) };
TypeInfo __type_info__44e10b9c0b7ea95f = { Type::tHandle, nullptr, nullptr, DAS_MAKE_ANNOTATION("~ast::ExprConstRange"), nullptr, nullptr, nullptr, nullptr, 0, 0, nullptr, 24578, TypeSize<ExprConstRange>::size, UINT64_C(0x44e10b9c0b7ea95f) };
TypeInfo __type_info__81d4b6e4402ada81 = { Type::tHandle, nullptr, nullptr, DAS_MAKE_ANNOTATION("~ast::ExprConstString"), nullptr, nullptr, nullptr, nullptr, 0, 0, nullptr, 24578, TypeSize<ExprConstString>::size, UINT64_C(0x81d4b6e4402ada81) };
TypeInfo __type_info__32209cf3725705b0 = { Type::tHandle, nullptr, nullptr, DAS_MAKE_ANNOTATION("~ast::ExprConstUInt16"), nullptr, nullptr, nullptr, nullptr, 0, 0, nullptr, 24578, TypeSize<ExprConstUInt16>::size, UINT64_C(0x32209cf3725705b0) };
TypeInfo __type_info__50a064d75d4cc1fb = { Type::tHandle, nullptr, nullptr, DAS_MAKE_ANNOTATION("~ast::ExprConstUInt2"), nullptr, nullptr, nullptr, nullptr, 0, 0, nullptr, 24578, TypeSize<ExprConstUInt2>::size, UINT64_C(0x50a064d75d4cc1fb) };
TypeInfo __type_info__50a063d75d4cc048 = { Type::tHandle, nullptr, nullptr, DAS_MAKE_ANNOTATION("~ast::ExprConstUInt3"), nullptr, nullptr, nullptr, nullptr, 0, 0, nullptr, 24578, TypeSize<ExprConstUInt3>::size, UINT64_C(0x50a063d75d4cc048) };
TypeInfo __type_info__50a06ad75d4ccc2d = { Type::tHandle, nullptr, nullptr, DAS_MAKE_ANNOTATION("~ast::ExprConstUInt4"), nullptr, nullptr, nullptr, nullptr, 0, 0, nullptr, 24578, TypeSize<ExprConstUInt4>::size, UINT64_C(0x50a06ad75d4ccc2d) };
TypeInfo __type_info__2b5f1ef36c99e51b = { Type::tHandle, nullptr, nullptr, DAS_MAKE_ANNOTATION("~ast::ExprConstUInt64"), nullptr, nullptr, nullptr, nullptr, 0, 0, nullptr, 24578, TypeSize<ExprConstUInt64>::size, UINT64_C(0x2b5f1ef36c99e51b) };
TypeInfo __type_info__50a05ed75d4cb7c9 = { Type::tHandle, nullptr, nullptr, DAS_MAKE_ANNOTATION("~ast::ExprConstUInt8"), nullptr, nullptr, nullptr, nullptr, 0, 0, nullptr, 24578, TypeSize<ExprConstUInt8>::size, UINT64_C(0x50a05ed75d4cb7c9) };
TypeInfo __type_info__50ca60d75d94192f = { Type::tHandle, nullptr, nullptr, DAS_MAKE_ANNOTATION("~ast::ExprConstUInt"), nullptr, nullptr, nullptr, nullptr, 0, 0, nullptr, 24578, TypeSize<ExprConstUInt>::size, UINT64_C(0x50ca60d75d94192f) };
TypeInfo __type_info__ee05ad47ac112e5f = { Type::tHandle, nullptr, nullptr, DAS_MAKE_ANNOTATION("~ast::ExprConstURange64"), nullptr, nullptr, nullptr, nullptr, 0, 0, nullptr, 24578, TypeSize<ExprConstURange64>::size, UINT64_C(0xee05ad47ac112e5f) };
TypeInfo __type_info__a1fe7a142c668903 = { Type::tHandle, nullptr, nullptr, DAS_MAKE_ANNOTATION("~ast::ExprConstURange"), nullptr, nullptr, nullptr, nullptr, 0, 0, nullptr, 24578, TypeSize<ExprConstURange>::size, UINT64_C(0xa1fe7a142c668903) };
TypeInfo __type_info__37bd8d7fdf3c5374 = { Type::tHandle, nullptr, nullptr, DAS_MAKE_ANNOTATION("~ast::ExprContinue"), nullptr, nullptr, nullptr, nullptr, 0, 0, nullptr, 24578, TypeSize<ExprContinue>::size, UINT64_C(0x37bd8d7fdf3c5374) };
TypeInfo __type_info__10fefde527f0e316 = { Type::tHandle, nullptr, nullptr, DAS_MAKE_ANNOTATION("~ast::ExprCopy"), nullptr, nullptr, nullptr, nullptr, 0, 0, nullptr, 24578, TypeSize<ExprCopy>::size, UINT64_C(0x10fefde527f0e316) };
TypeInfo __type_info__8ea2bb6c84fe54ae = { Type::tHandle, nullptr, nullptr, DAS_MAKE_ANNOTATION("~ast::ExprDebug"), nullptr, nullptr, nullptr, nullptr, 0, 0, nullptr, 24578, TypeSize<ExprDebug>::size, UINT64_C(0x8ea2bb6c84fe54ae) };
TypeInfo __type_info__643b022638807dc3 = { Type::tHandle, nullptr, nullptr, DAS_MAKE_ANNOTATION("~ast::ExprDelete"), nullptr, nullptr, nullptr, nullptr, 0, 0, nullptr, 24578, TypeSize<ExprDelete>::size, UINT64_C(0x643b022638807dc3) };
TypeInfo __type_info__e166b9c4a79e779 = { Type::tHandle, nullptr, nullptr, DAS_MAKE_ANNOTATION("~ast::ExprErase"), nullptr, nullptr, nullptr, nullptr, 0, 0, nullptr, 24578, TypeSize<ExprErase>::size, UINT64_C(0xe166b9c4a79e779) };
TypeInfo __type_info__a3d5bceeff53f155 = { Type::tHandle, nullptr, nullptr, DAS_MAKE_ANNOTATION("~ast::ExprFakeContext"), nullptr, nullptr, nullptr, nullptr, 0, 0, nullptr, 24578, TypeSize<ExprFakeContext>::size, UINT64_C(0xa3d5bceeff53f155) };
TypeInfo __type_info__f85f434a5cfa7cf9 = { Type::tHandle, nullptr, nullptr, DAS_MAKE_ANNOTATION("~ast::ExprFakeLineInfo"), nullptr, nullptr, nullptr, nullptr, 0, 0, nullptr, 24578, TypeSize<ExprFakeLineInfo>::size, UINT64_C(0xf85f434a5cfa7cf9) };
TypeInfo __type_info__c1ab66e04afa3a7 = { Type::tHandle, nullptr, nullptr, DAS_MAKE_ANNOTATION("~ast::ExprField"), nullptr, nullptr, nullptr, nullptr, 0, 0, nullptr, 24578, TypeSize<ExprField>::size, UINT64_C(0xc1ab66e04afa3a7) };
TypeInfo __type_info__b8cb16fdfafa869b = { Type::tHandle, nullptr, nullptr, DAS_MAKE_ANNOTATION("~ast::ExprFind"), nullptr, nullptr, nullptr, nullptr, 0, 0, nullptr, 24578, TypeSize<ExprFind>::size, UINT64_C(0xb8cb16fdfafa869b) };
TypeInfo __type_info__598840fdaa05c3ef = { Type::tHandle, nullptr, nullptr, DAS_MAKE_ANNOTATION("~ast::ExprFor"), nullptr, nullptr, nullptr, nullptr, 0, 0, nullptr, 24578, TypeSize<ExprFor>::size, UINT64_C(0x598840fdaa05c3ef) };
TypeInfo __type_info__aa2eff9e8711b4c = { Type::tHandle, nullptr, nullptr, DAS_MAKE_ANNOTATION("~ast::ExprGoto"), nullptr, nullptr, nullptr, nullptr, 0, 0, nullptr, 24578, TypeSize<ExprGoto>::size, UINT64_C(0xaa2eff9e8711b4c) };
TypeInfo __type_info__833e12e4dcd8153d = { Type::tHandle, nullptr, nullptr, DAS_MAKE_ANNOTATION("~ast::ExprIfThenElse"), nullptr, nullptr, nullptr, nullptr, 0, 0, nullptr, 24578, TypeSize<ExprIfThenElse>::size, UINT64_C(0x833e12e4dcd8153d) };
TypeInfo __type_info__f1f05ee81890b310 = { Type::tHandle, nullptr, nullptr, DAS_MAKE_ANNOTATION("~ast::ExprInvoke"), nullptr, nullptr, nullptr, nullptr, 0, 0, nullptr, 24578, TypeSize<ExprInvoke>::size, UINT64_C(0xf1f05ee81890b310) };
TypeInfo __type_info__afca8289899d784f = { Type::tHandle, nullptr, nullptr, DAS_MAKE_ANNOTATION("~ast::ExprIs"), nullptr, nullptr, nullptr, nullptr, 0, 0, nullptr, 24578, TypeSize<ExprIs>::size, UINT64_C(0xafca8289899d784f) };
TypeInfo __type_info__725600cc59f9ef1 = { Type::tHandle, nullptr, nullptr, DAS_MAKE_ANNOTATION("~ast::ExprIsVariant"), nullptr, nullptr, nullptr, nullptr, 0, 0, nullptr, 24578, TypeSize<ExprIsVariant>::size, UINT64_C(0x725600cc59f9ef1) };
TypeInfo __type_info__5a876ec502d05cd5 = { Type::tHandle, nullptr, nullptr, DAS_MAKE_ANNOTATION("~ast::ExprKeyExists"), nullptr, nullptr, nullptr, nullptr, 0, 0, nullptr, 24578, TypeSize<ExprKeyExists>::size, UINT64_C(0x5a876ec502d05cd5) };
TypeInfo __type_info__a8d3190cd853597a = { Type::tHandle, nullptr, nullptr, DAS_MAKE_ANNOTATION("~ast::ExprLabel"), nullptr, nullptr, nullptr, nullptr, 0, 0, nullptr, 24578, TypeSize<ExprLabel>::size, UINT64_C(0xa8d3190cd853597a) };
TypeInfo __type_info__b3d9c0cc943b4165 = { Type::tHandle, nullptr, nullptr, DAS_MAKE_ANNOTATION("~ast::ExprLet"), nullptr, nullptr, nullptr, nullptr, 0, 0, nullptr, 24578, TypeSize<ExprLet>::size, UINT64_C(0xb3d9c0cc943b4165) };
TypeInfo __type_info__d07c067a5c7b8ff4 = { Type::tHandle, nullptr, nullptr, DAS_MAKE_ANNOTATION("~ast::ExprLooksLikeCall"), nullptr, nullptr, nullptr, nullptr, 0, 0, nullptr, 24578, TypeSize<ExprLooksLikeCall>::size, UINT64_C(0xd07c067a5c7b8ff4) };
TypeInfo __type_info__7260bd93a15a7ff1 = { Type::tHandle, nullptr, nullptr, DAS_MAKE_ANNOTATION("~ast::ExprMakeArray"), nullptr, nullptr, nullptr, nullptr, 0, 0, nullptr, 24578, TypeSize<ExprMakeArray>::size, UINT64_C(0x7260bd93a15a7ff1) };
TypeInfo __type_info__e9813cd85e320ce1 = { Type::tHandle, nullptr, nullptr, DAS_MAKE_ANNOTATION("~ast::ExprMakeBlock"), nullptr, nullptr, nullptr, nullptr, 0, 0, nullptr, 24578, TypeSize<ExprMakeBlock>::size, UINT64_C(0xe9813cd85e320ce1) };
TypeInfo __type_info__644a49dea6863e78 = { Type::tHandle, nullptr, nullptr, DAS_MAKE_ANNOTATION("~ast::ExprMakeGenerator"), nullptr, nullptr, nullptr, nullptr, 0, 0, nullptr, 24578, TypeSize<ExprMakeGenerator>::size, UINT64_C(0x644a49dea6863e78) };
TypeInfo __type_info__b6c344d07fc80acd = { Type::tHandle, nullptr, nullptr, DAS_MAKE_ANNOTATION("~ast::ExprMakeStruct"), nullptr, nullptr, nullptr, nullptr, 0, 0, nullptr, 24578, TypeSize<ExprMakeStruct>::size, UINT64_C(0xb6c344d07fc80acd) };
TypeInfo __type_info__94e15ebe6d2ac6c5 = { Type::tHandle, nullptr, nullptr, DAS_MAKE_ANNOTATION("~ast::ExprMakeTuple"), nullptr, nullptr, nullptr, nullptr, 0, 0, nullptr, 24578, TypeSize<ExprMakeTuple>::size, UINT64_C(0x94e15ebe6d2ac6c5) };
TypeInfo __type_info__749bdb083606521a = { Type::tHandle, nullptr, nullptr, DAS_MAKE_ANNOTATION("~ast::ExprMakeVariant"), nullptr, nullptr, nullptr, nullptr, 0, 0, nullptr, 24578, TypeSize<ExprMakeVariant>::size, UINT64_C(0x749bdb083606521a) };
TypeInfo __type_info__bbedea2da76c1cbd = { Type::tHandle, nullptr, nullptr, DAS_MAKE_ANNOTATION("~ast::ExprMemZero"), nullptr, nullptr, nullptr, nullptr, 0, 0, nullptr, 24578, TypeSize<ExprMemZero>::size, UINT64_C(0xbbedea2da76c1cbd) };
TypeInfo __type_info__6508f9c8d2b82c4a = { Type::tHandle, nullptr, nullptr, DAS_MAKE_ANNOTATION("~ast::ExprMove"), nullptr, nullptr, nullptr, nullptr, 0, 0, nullptr, 24578, TypeSize<ExprMove>::size, UINT64_C(0x6508f9c8d2b82c4a) };
TypeInfo __type_info__c88d1b35f2ffa823 = { Type::tHandle, nullptr, nullptr, DAS_MAKE_ANNOTATION("~ast::ExprNamedCall"), nullptr, nullptr, nullptr, nullptr, 0, 0, nullptr, 24578, TypeSize<ExprNamedCall>::size, UINT64_C(0xc88d1b35f2ffa823) };
TypeInfo __type_info__f14dc0d72b72a465 = { Type::tHandle, nullptr, nullptr, DAS_MAKE_ANNOTATION("~ast::ExprNew"), nullptr, nullptr, nullptr, nullptr, 0, 0, nullptr, 24578, TypeSize<ExprNew>::size, UINT64_C(0xf14dc0d72b72a465) };
TypeInfo __type_info__e4bc23ea0da25d79 = { Type::tHandle, nullptr, nullptr, DAS_MAKE_ANNOTATION("~ast::ExprNullCoalescing"), nullptr, nullptr, nullptr, nullptr, 0, 0, nullptr, 24578, TypeSize<ExprNullCoalescing>::size, UINT64_C(0xe4bc23ea0da25d79) };
TypeInfo __type_info__b4d3bed2a010acf4 = { Type::tHandle, nullptr, nullptr, DAS_MAKE_ANNOTATION("~ast::ExprOp1"), nullptr, nullptr, nullptr, nullptr, 0, 0, nullptr, 24578, TypeSize<ExprOp1>::size, UINT64_C(0xb4d3bed2a010acf4) };
TypeInfo __type_info__b839bed2a2f3d5f4 = { Type::tHandle, nullptr, nullptr, DAS_MAKE_ANNOTATION("~ast::ExprOp2"), nullptr, nullptr, nullptr, nullptr, 0, 0, nullptr, 24578, TypeSize<ExprOp2>::size, UINT64_C(0xb839bed2a2f3d5f4) };
TypeInfo __type_info__bb9fbed2a5d6fef4 = { Type::tHandle, nullptr, nullptr, DAS_MAKE_ANNOTATION("~ast::ExprOp3"), nullptr, nullptr, nullptr, nullptr, 0, 0, nullptr, 24578, TypeSize<ExprOp3>::size, UINT64_C(0xbb9fbed2a5d6fef4) };
TypeInfo __type_info__b0f72e776d005eaf = { Type::tHandle, nullptr, nullptr, DAS_MAKE_ANNOTATION("~ast::ExprPtr2Ref"), nullptr, nullptr, nullptr, nullptr, 0, 0, nullptr, 24578, TypeSize<ExprPtr2Ref>::size, UINT64_C(0xb0f72e776d005eaf) };
TypeInfo __type_info__29261b9b611e6f1b = { Type::tHandle, nullptr, nullptr, DAS_MAKE_ANNOTATION("~ast::ExprQuote"), nullptr, nullptr, nullptr, nullptr, 0, 0, nullptr, 24578, TypeSize<ExprQuote>::size, UINT64_C(0x29261b9b611e6f1b) };
TypeInfo __type_info__64b15f9df38db54f = { Type::tHandle, nullptr, nullptr, DAS_MAKE_ANNOTATION("~ast::ExprReader"), nullptr, nullptr, nullptr, nullptr, 0, 0, nullptr, 24578, TypeSize<ExprReader>::size, UINT64_C(0x64b15f9df38db54f) };
TypeInfo __type_info__d27a1f910d191ab3 = { Type::tHandle, nullptr, nullptr, DAS_MAKE_ANNOTATION("~ast::ExprRef2Ptr"), nullptr, nullptr, nullptr, nullptr, 0, 0, nullptr, 24578, TypeSize<ExprRef2Ptr>::size, UINT64_C(0xd27a1f910d191ab3) };
TypeInfo __type_info__6dc5617548466ef3 = { Type::tHandle, nullptr, nullptr, DAS_MAKE_ANNOTATION("~ast::ExprRef2Value"), nullptr, nullptr, nullptr, nullptr, 0, 0, nullptr, 24578, TypeSize<ExprRef2Value>::size, UINT64_C(0x6dc5617548466ef3) };
TypeInfo __type_info__15a45142a97c9b3e = { Type::tHandle, nullptr, nullptr, DAS_MAKE_ANNOTATION("~ast::ExprReturn"), nullptr, nullptr, nullptr, nullptr, 0, 0, nullptr, 24578, TypeSize<ExprReturn>::size, UINT64_C(0x15a45142a97c9b3e) };
TypeInfo __type_info__cfc6c6515483a76b = { Type::tHandle, nullptr, nullptr, DAS_MAKE_ANNOTATION("~ast::ExprSafeAsVariant"), nullptr, nullptr, nullptr, nullptr, 0, 0, nullptr, 24578, TypeSize<ExprSafeAsVariant>::size, UINT64_C(0xcfc6c6515483a76b) };
TypeInfo __type_info__a87ef47d40240d3c = { Type::tHandle, nullptr, nullptr, DAS_MAKE_ANNOTATION("~ast::ExprSafeAt"), nullptr, nullptr, nullptr, nullptr, 0, 0, nullptr, 24578, TypeSize<ExprSafeAt>::size, UINT64_C(0xa87ef47d40240d3c) };
TypeInfo __type_info__10ddfd98f14d71c1 = { Type::tHandle, nullptr, nullptr, DAS_MAKE_ANNOTATION("~ast::ExprSafeField"), nullptr, nullptr, nullptr, nullptr, 0, 0, nullptr, 24578, TypeSize<ExprSafeField>::size, UINT64_C(0x10ddfd98f14d71c1) };
TypeInfo __type_info__4396458b6cca487d = { Type::tHandle, nullptr, nullptr, DAS_MAKE_ANNOTATION("~ast::ExprSetInsert"), nullptr, nullptr, nullptr, nullptr, 0, 0, nullptr, 24578, TypeSize<ExprSetInsert>::size, UINT64_C(0x4396458b6cca487d) };
TypeInfo __type_info__7a94f4cc4bcf20e5 = { Type::tHandle, nullptr, nullptr, DAS_MAKE_ANNOTATION("~ast::ExprStaticAssert"), nullptr, nullptr, nullptr, nullptr, 0, 0, nullptr, 24578, TypeSize<ExprStaticAssert>::size, UINT64_C(0x7a94f4cc4bcf20e5) };
TypeInfo __type_info__278bc6d46dadffa8 = { Type::tHandle, nullptr, nullptr, DAS_MAKE_ANNOTATION("~ast::ExprStringBuilder"), nullptr, nullptr, nullptr, nullptr, 0, 0, nullptr, 24578, TypeSize<ExprStringBuilder>::size, UINT64_C(0x278bc6d46dadffa8) };
TypeInfo __type_info__da0e82cafc1e70b1 = { Type::tHandle, nullptr, nullptr, DAS_MAKE_ANNOTATION("~ast::ExprSwizzle"), nullptr, nullptr, nullptr, nullptr, 0, 0, nullptr, 24578, TypeSize<ExprSwizzle>::size, UINT64_C(0xda0e82cafc1e70b1) };
TypeInfo __type_info__7b55c0a63e321fc1 = { Type::tHandle, nullptr, nullptr, DAS_MAKE_ANNOTATION("~ast::ExprTag"), nullptr, nullptr, nullptr, nullptr, 0, 0, nullptr, 24578, TypeSize<ExprTag>::size, UINT64_C(0x7b55c0a63e321fc1) };
TypeInfo __type_info__5e2809979d5f78c9 = { Type::tHandle, nullptr, nullptr, DAS_MAKE_ANNOTATION("~ast::ExprTryCatch"), nullptr, nullptr, nullptr, nullptr, 0, 0, nullptr, 24578, TypeSize<ExprTryCatch>::size, UINT64_C(0x5e2809979d5f78c9) };
TypeInfo __type_info__60a144dd7cf1ba91 = { Type::tHandle, nullptr, nullptr, DAS_MAKE_ANNOTATION("~ast::ExprTypeDecl"), nullptr, nullptr, nullptr, nullptr, 0, 0, nullptr, 24578, TypeSize<ExprTypeDecl>::size, UINT64_C(0x60a144dd7cf1ba91) };
TypeInfo __type_info__c15e41a8ee5ebf97 = { Type::tHandle, nullptr, nullptr, DAS_MAKE_ANNOTATION("~ast::ExprTypeInfo"), nullptr, nullptr, nullptr, nullptr, 0, 0, nullptr, 24578, TypeSize<ExprTypeInfo>::size, UINT64_C(0xc15e41a8ee5ebf97) };
TypeInfo __type_info__a88454b76bb549ba = { Type::tHandle, nullptr, nullptr, DAS_MAKE_ANNOTATION("~ast::ExprUnsafe"), nullptr, nullptr, nullptr, nullptr, 0, 0, nullptr, 24578, TypeSize<ExprUnsafe>::size, UINT64_C(0xa88454b76bb549ba) };
TypeInfo __type_info__811c0b03f452ec1 = { Type::tHandle, nullptr, nullptr, DAS_MAKE_ANNOTATION("~ast::ExprVar"), nullptr, nullptr, nullptr, nullptr, 0, 0, nullptr, 24578, TypeSize<ExprVar>::size, UINT64_C(0x811c0b03f452ec1) };
TypeInfo __type_info__51f018132be6c64 = { Type::tHandle, nullptr, nullptr, DAS_MAKE_ANNOTATION("~ast::ExprWhile"), nullptr, nullptr, nullptr, nullptr, 0, 0, nullptr, 24578, TypeSize<ExprWhile>::size, UINT64_C(0x51f018132be6c64) };
TypeInfo __type_info__b99012ac7e42bacf = { Type::tHandle, nullptr, nullptr, DAS_MAKE_ANNOTATION("~ast::ExprWith"), nullptr, nullptr, nullptr, nullptr, 0, 0, nullptr, 24578, TypeSize<ExprWith>::size, UINT64_C(0xb99012ac7e42bacf) };
TypeInfo __type_info__8873b51c25d24aa7 = { Type::tHandle, nullptr, nullptr, DAS_MAKE_ANNOTATION("~ast::ExprYield"), nullptr, nullptr, nullptr, nullptr, 0, 0, nullptr, 24578, TypeSize<ExprYield>::size, UINT64_C(0x8873b51c25d24aa7) };
TypeInfo __type_info__960dd6428887a234 = { Type::tHandle, nullptr, nullptr, DAS_MAKE_ANNOTATION("~ast::Expression"), nullptr, nullptr, nullptr, nullptr, 0, 0, nullptr, 24578, TypeSize<Expression>::size, UINT64_C(0x960dd6428887a234) };
TypeInfo __type_info__a57bf935c2dd03 = { Type::tHandle, nullptr, nullptr, DAS_MAKE_ANNOTATION("~ast::Function"), nullptr, nullptr, nullptr, nullptr, 0, 0, nullptr, 24578, TypeSize<Function>::size, UINT64_C(0xa57bf935c2dd03) };
TypeInfo __type_info__acd33335f9c1e498 = { Type::tHandle, nullptr, nullptr, DAS_MAKE_ANNOTATION("~ast::MakeFieldDecl"), nullptr, nullptr, nullptr, nullptr, 0, 0, nullptr, 24578, TypeSize<MakeFieldDecl>::size, UINT64_C(0xacd33335f9c1e498) };
TypeInfo __type_info__60d16a2d23420951 = { Type::tHandle, nullptr, nullptr, DAS_MAKE_ANNOTATION("~ast::Structure"), nullptr, nullptr, nullptr, nullptr, 0, 0, nullptr, 24578, TypeSize<Structure>::size, UINT64_C(0x60d16a2d23420951) };
TypeInfo __type_info__ce241e3005cc873b = { Type::tHandle, nullptr, nullptr, DAS_MAKE_ANNOTATION("~ast::TypeDecl"), nullptr, nullptr, nullptr, nullptr, 0, 0, nullptr, 24578, TypeSize<TypeDecl>::size, UINT64_C(0xce241e3005cc873b) };
TypeInfo __type_info__ccd32e474e9a33eb = { Type::tHandle, nullptr, nullptr, DAS_MAKE_ANNOTATION("~ast::Variable"), nullptr, nullptr, nullptr, nullptr, 0, 0, nullptr, 24578, TypeSize<Variable>::size, UINT64_C(0xccd32e474e9a33eb) };
TypeInfo __type_info__8afce1a80940fc9e = { Type::tHandle, nullptr, nullptr, DAS_MAKE_ANNOTATION("~rtti::Module"), nullptr, nullptr, nullptr, nullptr, 0, 0, nullptr, 2, TypeSize<Module>::size, UINT64_C(0x8afce1a80940fc9e) };
TypeInfo __type_info__125855d9cd771ead = { Type::tHandle, nullptr, nullptr, DAS_MAKE_ANNOTATION("~rtti::Program"), nullptr, nullptr, nullptr, nullptr, 0, 0, nullptr, 8194, TypeSize<Program>::size, UINT64_C(0x125855d9cd771ead) };
TypeInfo __type_info__21586ce84f433a21 = { Type::tStructure, &__struct_info__1e8db4ddc1444e12, nullptr, nullptr, nullptr, nullptr, nullptr, nullptr, 0, 0, nullptr, 24590, TypeSize<ast::AstVisitor>::size, UINT64_C(0x21586ce84f433a21) };
TypeInfo __type_info__c08112e43ab7daf4 = { Type::tStructure, &__struct_info__9a70e6afd95b0571, nullptr, nullptr, &__type_info__21586ce84f433a21, nullptr, nullptr, nullptr, 0, 0, nullptr, 57346, TypeSize<soa::CollectAndReplaceIteratorFields>::size, UINT64_C(0xc08112e43ab7daf4) };
TypeInfo __type_info__e4765bc563f255e = { Type::tPointer, nullptr, nullptr, nullptr, &__type_info__cd505ad3b1c59cc6, nullptr, nullptr, nullptr, 0, 0, nullptr, 25600, TypeSize<smart_ptr_raw<Enumeration>>::size, UINT64_C(0xe4765bc563f255e) };
TypeInfo __type_info__6636442e03391ebf = { Type::tPointer, nullptr, nullptr, nullptr, &__type_info__960dd6428887a234, nullptr, nullptr, nullptr, 0, 0, nullptr, 25600, TypeSize<smart_ptr_raw<Expression>>::size, UINT64_C(0x6636442e03391ebf) };
TypeInfo __type_info__4cdbed951d30a5d1 = { Type::tPointer, nullptr, nullptr, nullptr, &__type_info__a57bf935c2dd03, nullptr, nullptr, nullptr, 0, 0, nullptr, 25600, TypeSize<smart_ptr_raw<Function>>::size, UINT64_C(0x4cdbed951d30a5d1) };
TypeInfo __type_info__c52835f1e7c9ab84 = { Type::tPointer, nullptr, nullptr, nullptr, &__type_info__acd33335f9c1e498, nullptr, nullptr, nullptr, 0, 0, nullptr, 25600, TypeSize<smart_ptr_raw<MakeFieldDecl>>::size, UINT64_C(0xc52835f1e7c9ab84) };
TypeInfo __type_info__7e104fcf0cd430e4 = { Type::tPointer, nullptr, nullptr, nullptr, &__type_info__60d16a2d23420951, nullptr, nullptr, nullptr, 0, 0, nullptr, 25600, TypeSize<smart_ptr_raw<Structure>>::size, UINT64_C(0x7e104fcf0cd430e4) };
TypeInfo __type_info__afcf203e0d7d50d = { Type::tPointer, nullptr, nullptr, nullptr, &__type_info__ce241e3005cc873b, nullptr, nullptr, nullptr, 0, 0, nullptr, 25600, TypeSize<smart_ptr_raw<TypeDecl>>::size, UINT64_C(0xafcf203e0d7d50d) };
TypeInfo __type_info__4d5fdda373bcfbd1 = { Type::tPointer, nullptr, nullptr, nullptr, &__type_info__ccd32e474e9a33eb, nullptr, nullptr, nullptr, 0, 0, nullptr, 25600, TypeSize<smart_ptr_raw<Variable>>::size, UINT64_C(0x4d5fdda373bcfbd1) };
TypeInfo __type_info__af63df4c8601f1a5 = { Type::tBool, nullptr, nullptr, nullptr, nullptr, nullptr, nullptr, nullptr, 0, 0, nullptr, 28, TypeSize<bool>::size, UINT64_C(0xaf63df4c8601f1a5) };
TypeInfo __type_info__af63ee4c86020b22 = { Type::tString, nullptr, nullptr, nullptr, nullptr, nullptr, nullptr, nullptr, 0, 0, nullptr, 16388, TypeSize<char *>::size, UINT64_C(0xaf63ee4c86020b22) };
TypeInfo __type_info__af63eb4c86020609 = { Type::tVoid, nullptr, nullptr, nullptr, nullptr, nullptr, nullptr, nullptr, 0, 0, nullptr, 28, TypeSize<void>::size, UINT64_C(0xaf63eb4c86020609) };

static void resolveTypeInfoAnnotations()
{
    vector<TypeInfo> annotations = {__type_info__624d371c76b25aa4, __type_info__29c0090cdbf7525c, __type_info__cd505ad3b1c59cc6, __type_info__7329fadda4ca251c, __type_info__3693bdfd1150bb56, __type_info__71ff6f045d2186f1, __type_info__acc5cdadba98f68e, __type_info__2055bdfdcee6bf5e, __type_info__fb56aefdaf9de951, __type_info__cb4a7f89a13eab36, __type_info__71c84a7f531ca5bb, __type_info__afd7e462d2caeebb, __type_info__54fceee561bff5eb, __type_info__a0219258cb3926ee, __type_info__1afef6e5304b2283, __type_info__898a3dd26b376c6a, __type_info__699f14ced40c8382, __type_info__ad18450df661455f, __type_info__91bbd69210f68e07, __type_info__3ee228fe47602659, __type_info__365a0d74b6e3ae27, __type_info__72bac02d9b0c1dd, __type_info__3c5ac02d6cd98dd, __type_info__f2c7ac02c85dcbdd, __type_info__bfbf448dd60c6211, __type_info__9307dd967ffe2b49, __type_info__8903e59677a2e7e1, __type_info__8c69e5967a8610e1, __type_info__8237e59671dc95e1, __type_info__7b85db966c4260e3, __type_info__aaffe596948281e1, __type_info__108c5371ed782a25, __type_info__ef0e5b71d12c4f0e, __type_info__6dfe2527715392d1, __type_info__44e10b9c0b7ea95f, __type_info__81d4b6e4402ada81, __type_info__32209cf3725705b0, __type_info__50a064d75d4cc1fb, __type_info__50a063d75d4cc048, __type_info__50a06ad75d4ccc2d, __type_info__2b5f1ef36c99e51b, __type_info__50a05ed75d4cb7c9, __type_info__50ca60d75d94192f, __type_info__ee05ad47ac112e5f, __type_info__a1fe7a142c668903, __type_info__37bd8d7fdf3c5374, __type_info__10fefde527f0e316, __type_info__8ea2bb6c84fe54ae, __type_info__643b022638807dc3, __type_info__e166b9c4a79e779, __type_info__a3d5bceeff53f155, __type_info__f85f434a5cfa7cf9, __type_info__c1ab66e04afa3a7, __type_info__b8cb16fdfafa869b, __type_info__598840fdaa05c3ef, __type_info__aa2eff9e8711b4c, __type_info__833e12e4dcd8153d, __type_info__f1f05ee81890b310, __type_info__afca8289899d784f, __type_info__725600cc59f9ef1, __type_info__5a876ec502d05cd5, __type_info__a8d3190cd853597a, __type_info__b3d9c0cc943b4165, __type_info__d07c067a5c7b8ff4, __type_info__7260bd93a15a7ff1, __type_info__e9813cd85e320ce1, __type_info__644a49dea6863e78, __type_info__b6c344d07fc80acd, __type_info__94e15ebe6d2ac6c5, __type_info__749bdb083606521a, __type_info__bbedea2da76c1cbd, __type_info__6508f9c8d2b82c4a, __type_info__c88d1b35f2ffa823, __type_info__f14dc0d72b72a465, __type_info__e4bc23ea0da25d79, __type_info__b4d3bed2a010acf4, __type_info__b839bed2a2f3d5f4, __type_info__bb9fbed2a5d6fef4, __type_info__b0f72e776d005eaf, __type_info__29261b9b611e6f1b, __type_info__64b15f9df38db54f, __type_info__d27a1f910d191ab3, __type_info__6dc5617548466ef3, __type_info__15a45142a97c9b3e, __type_info__cfc6c6515483a76b, __type_info__a87ef47d40240d3c, __type_info__10ddfd98f14d71c1, __type_info__4396458b6cca487d, __type_info__7a94f4cc4bcf20e5, __type_info__278bc6d46dadffa8, __type_info__da0e82cafc1e70b1, __type_info__7b55c0a63e321fc1, __type_info__5e2809979d5f78c9, __type_info__60a144dd7cf1ba91, __type_info__c15e41a8ee5ebf97, __type_info__a88454b76bb549ba, __type_info__811c0b03f452ec1, __type_info__51f018132be6c64, __type_info__b99012ac7e42bacf, __type_info__8873b51c25d24aa7, __type_info__960dd6428887a234, __type_info__a57bf935c2dd03, __type_info__acd33335f9c1e498, __type_info__60d16a2d23420951, __type_info__ce241e3005cc873b, __type_info__ccd32e474e9a33eb, __type_info__8afce1a80940fc9e, __type_info__125855d9cd771ead, };
    for (auto& ann : annotations) {
        ann.resolveAnnotation();
    }
}

TypeInfo * __tinfo_0[1] = { &__type_info__5eddda99b960ff80 };

inline void _FuncbuiltinTickpushTick10769833213962245646_bf13ac978ab9bde1 ( Context * __context__, TArray<ast::AstStructureAnnotation *> & __Arr_rename_at_181_0, ast::AstStructureAnnotation * __value_rename_at_181_1 );
inline StructInfo const  * _FuncrttiTickclass_infoTick15801393167907430156_3cdf90f0050f0bd0 ( Context * __context__, soa::SoaStructMacro const  & __cl_rename_at_116_2 );
inline void _FuncbuiltinTickpushTick10769833213962245646_98769edad04f7586 ( Context * __context__, TArray<ast::AstFunctionAnnotation *> & __Arr_rename_at_181_3, ast::AstFunctionAnnotation * __value_rename_at_181_4 );
inline StructInfo const  * _FuncrttiTickclass_infoTick15801393167907430156_d0e87fb9376a5c12 ( Context * __context__, soa::SoaCallMacro const  & __cl_rename_at_116_5 );
inline void _FuncbuiltinTickpushTick10769833213962245646_62a2cc7fcca24a80 ( Context * __context__, TArray<ast::AstForLoopMacro *> & __Arr_rename_at_181_6, ast::AstForLoopMacro * __value_rename_at_181_7 );
inline StructInfo const  * _FuncrttiTickclass_infoTick15801393167907430156_d8e68604e6d0a34f ( Context * __context__, soa::SoaForLoop const  & __cl_rename_at_116_8 );
inline StructInfo const  * _FuncrttiTickclass_infoTick15801393167907430156_209edeb7de5c0a53 ( Context * __context__, soa::CollectAndReplaceIteratorFields const  & __cl_rename_at_116_9 );
inline void _FuncbuiltinTickfinalizeTick5454204887383796109_6756312eac7cb0d5 ( Context * __context__, TTable<char *,bool> & __a_rename_at_1245_10 );
inline smart_ptr_raw<FunctionAnnotation> _FuncastTickmake_function_annotationTick3074191368936885601_f2871754a6b7b4d2 ( Context * __context__, char * const  __name_rename_at_631_11, soa::SoaCallMacro * __someClassPtr_rename_at_631_12 );
inline void _FuncbuiltinTickinsertTick12964066441666329206_ed82fde366293a19 ( Context * __context__, TTable<char *,bool> & __Tab_rename_at_947_14, char * const  __at_rename_at_947_15, bool __val_rename_at_947_16 );
inline void _FuncbuiltinTickpushTick10769833213962245646_2e2035451aa39fbe ( Context * __context__, TArray<char *> & __Arr_rename_at_181_17, char * __value_rename_at_181_18 );
inline TArray<char *> & _FuncbuiltinTick_return_with_lockcheckTick2939372000839727345_f20df1c1eaee53 ( Context * __context__, TArray<char *> & __a_rename_at_50_19 );
inline void _FuncbuiltinTickpushTick14133213201864676143_11cab7c02908b7e7 ( Context * __context__, TArray<char *> & __Arr_rename_at_165_20, char * const  __value_rename_at_165_21 );
inline char * _FuncastTickdescribeTick842554968825501494_7ce40fe8f75fc0c ( Context * __context__, smart_ptr_raw<Expression> const  __expr_rename_at_48_22 );
inline void _Funcast_boostTicksetup_tag_annotationTick4095297895764883997_efe5e2c78fb5d173 ( Context * __context__, char * const  __name_rename_at_240_23, char * const  __tag_rename_at_240_24, soa::SoaCallMacro * __classPtr_rename_at_240_25 );
inline Structure * _FuncbuiltinTickget_ptrTick5807679485210906136_40d47796265c352d ( Context * __context__, smart_ptr_raw<Structure> __src_rename_at_1784_27 );
inline void finalize_4044026fdc19e92c ( Context * __context__, soa::CollectAndReplaceIteratorFields & ____this_rename_at_211_28 );
inline smart_ptr_raw<VisitorAdapter> _FuncastTickmake_visitorTick897644165917210720_953b84b0d8e9d6c1 ( Context * __context__, soa::CollectAndReplaceIteratorFields const  & __someClass_rename_at_684_29 );
inline Sequence DAS_COMMENT((char *)) _FuncbuiltinTickkeysTick2205854368403803976_b94684321587e3d1 ( Context * __context__, TTable<char *,bool> const  & __a_rename_at_1180_32 );
inline void finalize_82eecfa560c28a37 ( Context * __context__, soa::CollectAndReplaceIteratorFields * & ____this_rename_at_238_34 );
inline void _FuncDot_cc13ea1f4c23c3ba ( Context * __context__, soa::SOA_INDEX const  & __src_rename_at_18_36, char * const  __field_rename_at_18_37 );
inline soa::CollectAndReplaceIteratorFields CollectAndReplaceIteratorFields_14541ac635b00423 ( Context * __context__, char * const  __prefix_rename_at_214_38 );
inline void _FuncCollectAndReplaceIteratorFieldsTickCollectAndReplaceIteratorFields_317ad332800526ce ( Context * __context__, soa::CollectAndReplaceIteratorFields & __self_rename_at_214_40, char * const  __prefix_rename_at_214_41 );
inline smart_ptr_raw<Expression> _FuncCollectAndReplaceIteratorFieldsTickvisitExprField_33e4881022e47194 ( Context * __context__, soa::CollectAndReplaceIteratorFields & __self_rename_at_217_42, smart_ptr_raw<ExprField> __expr_rename_at_217_43 );
inline void _FuncCollectAndReplaceIteratorFields_0x27___finalize_b566b2c74b2cefea ( Context * __context__, soa::CollectAndReplaceIteratorFields & __self_rename_at_211_46 );
inline TArray<char *> collect_and_replace_iterator_fields_8217e213d7d903f1 ( Context * __context__, char * const  __prefix_rename_at_229_47, smart_ptr_raw<Expression> const  __blk_rename_at_229_48 );

void __init_script ( Context * __context__, bool __init_shared )
{
}

inline void _FuncbuiltinTickpushTick10769833213962245646_bf13ac978ab9bde1 ( Context * __context__, TArray<ast::AstStructureAnnotation *> &  __Arr_rename_at_181_0, ast::AstStructureAnnotation * __value_rename_at_181_1 )
{
    das_copy(__Arr_rename_at_181_0(builtin_array_push_back(das_arg<TArray<ast::AstStructureAnnotation *>>::pass(__Arr_rename_at_181_0),8,__context__,((LineInfoArg *)(&LineInfo::g_LineInfoNULL))),__context__),__value_rename_at_181_1);
}

inline StructInfo const  * _FuncrttiTickclass_infoTick15801393167907430156_3cdf90f0050f0bd0 ( Context * __context__, soa::SoaStructMacro const  &  __cl_rename_at_116_2 )
{
    return das_auto_cast<StructInfo const  *>::cast(das_cast<StructInfo const  *>::cast(((das_deref(__context__,das_cast<TypeInfo const  *>::cast(__cl_rename_at_116_2.__rtti))).getStructType())));
}

inline void _FuncbuiltinTickpushTick10769833213962245646_98769edad04f7586 ( Context * __context__, TArray<ast::AstFunctionAnnotation *> &  __Arr_rename_at_181_3, ast::AstFunctionAnnotation * __value_rename_at_181_4 )
{
    das_copy(__Arr_rename_at_181_3(builtin_array_push_back(das_arg<TArray<ast::AstFunctionAnnotation *>>::pass(__Arr_rename_at_181_3),8,__context__,((LineInfoArg *)(&LineInfo::g_LineInfoNULL))),__context__),__value_rename_at_181_4);
}

inline StructInfo const  * _FuncrttiTickclass_infoTick15801393167907430156_d0e87fb9376a5c12 ( Context * __context__, soa::SoaCallMacro const  &  __cl_rename_at_116_5 )
{
    return das_auto_cast<StructInfo const  *>::cast(das_cast<StructInfo const  *>::cast(((das_deref(__context__,das_cast<TypeInfo const  *>::cast(__cl_rename_at_116_5.__rtti))).getStructType())));
}

inline void _FuncbuiltinTickpushTick10769833213962245646_62a2cc7fcca24a80 ( Context * __context__, TArray<ast::AstForLoopMacro *> &  __Arr_rename_at_181_6, ast::AstForLoopMacro * __value_rename_at_181_7 )
{
    das_copy(__Arr_rename_at_181_6(builtin_array_push_back(das_arg<TArray<ast::AstForLoopMacro *>>::pass(__Arr_rename_at_181_6),8,__context__,((LineInfoArg *)(&LineInfo::g_LineInfoNULL))),__context__),__value_rename_at_181_7);
}

inline StructInfo const  * _FuncrttiTickclass_infoTick15801393167907430156_d8e68604e6d0a34f ( Context * __context__, soa::SoaForLoop const  &  __cl_rename_at_116_8 )
{
    return das_auto_cast<StructInfo const  *>::cast(das_cast<StructInfo const  *>::cast(((das_deref(__context__,das_cast<TypeInfo const  *>::cast(__cl_rename_at_116_8.__rtti))).getStructType())));
}

inline StructInfo const  * _FuncrttiTickclass_infoTick15801393167907430156_209edeb7de5c0a53 ( Context * __context__, soa::CollectAndReplaceIteratorFields const  &  __cl_rename_at_116_9 )
{
    return das_auto_cast<StructInfo const  *>::cast(das_cast<StructInfo const  *>::cast(((das_deref(__context__,das_cast<TypeInfo const  *>::cast(__cl_rename_at_116_9.__rtti))).getStructType())));
}

inline void _FuncbuiltinTickfinalizeTick5454204887383796109_6756312eac7cb0d5 ( Context * __context__, TTable<char *,bool> &  __a_rename_at_1245_10 )
{
    builtin_table_free(das_arg<TTable<char *,bool>>::pass(__a_rename_at_1245_10),8,1,__context__,((LineInfoArg *)(&LineInfo::g_LineInfoNULL)));
}

inline smart_ptr_raw<FunctionAnnotation> _FuncastTickmake_function_annotationTick3074191368936885601_f2871754a6b7b4d2 ( Context * __context__, char * const  __name_rename_at_631_11, soa::SoaCallMacro * __someClassPtr_rename_at_631_12 )
{
    _FuncbuiltinTickpushTick10769833213962245646_98769edad04f7586(__context__,das_arg<TArray<ast::AstFunctionAnnotation *>>::pass(das_global<TArray<ast::AstFunctionAnnotation *>,0x70a17c19e372bb43>(__context__) /*gc_root_AstFunctionAnnotation*/),das_reinterpret<ast::AstFunctionAnnotation *>::pass(__someClassPtr_rename_at_631_12));
    StructInfo const  * __classInfo_rename_at_634_13 = ((StructInfo const  *)_FuncrttiTickclass_infoTick15801393167907430156_d0e87fb9376a5c12(__context__,das_arg<soa::SoaCallMacro>::pass(das_deref(__context__,__someClassPtr_rename_at_631_12))));
    return /* <- */ das_auto_cast_move<smart_ptr_raw<FunctionAnnotation>>::cast(makeFunctionAnnotation(__name_rename_at_631_11,das_auto_cast<void * const >::cast(__someClassPtr_rename_at_631_12),__classInfo_rename_at_634_13,__context__));
}

inline void _FuncbuiltinTickinsertTick12964066441666329206_ed82fde366293a19 ( Context * __context__, TTable<char *,bool> &  __Tab_rename_at_947_14, char * const  __at_rename_at_947_15, bool __val_rename_at_947_16 )
{
    das_copy(__Tab_rename_at_947_14(__at_rename_at_947_15,__context__),__val_rename_at_947_16);
}

inline void _FuncbuiltinTickpushTick10769833213962245646_2e2035451aa39fbe ( Context * __context__, TArray<char *> &  __Arr_rename_at_181_17, char * __value_rename_at_181_18 )
{
    das_copy(__Arr_rename_at_181_17(builtin_array_push_back(das_arg<TArray<char *>>::pass(__Arr_rename_at_181_17),8,__context__,((LineInfoArg *)(&LineInfo::g_LineInfoNULL))),__context__),__value_rename_at_181_18);
}

inline TArray<char *> & _FuncbuiltinTick_return_with_lockcheckTick2939372000839727345_f20df1c1eaee53 ( Context * __context__, TArray<char *> &  __a_rename_at_50_19 )
{
    das_call_interop<void>::call(&builtin_verify_locks,__context__,SimNode_AotInterop<1>(__tinfo_0,cast<TArray<char *> &>::from(__a_rename_at_50_19)));
    return das_auto_cast_ref<TArray<char *> &>::cast(__a_rename_at_50_19);
}

inline void _FuncbuiltinTickpushTick14133213201864676143_11cab7c02908b7e7 ( Context * __context__, TArray<char *> &  __Arr_rename_at_165_20, char * const  __value_rename_at_165_21 )
{
    das_copy(__Arr_rename_at_165_20(builtin_array_push_back(das_arg<TArray<char *>>::pass(__Arr_rename_at_165_20),8,__context__,((LineInfoArg *)(&LineInfo::g_LineInfoNULL))),__context__),__value_rename_at_165_21);
}

inline char * _FuncastTickdescribeTick842554968825501494_7ce40fe8f75fc0c ( Context * __context__, smart_ptr_raw<Expression> const  __expr_rename_at_48_22 )
{
    return das_auto_cast<char *>::cast(((char * const )(ast_describe_expression(__expr_rename_at_48_22,__context__,((LineInfoArg *)(&LineInfo::g_LineInfoNULL))))));
}

inline void _Funcast_boostTicksetup_tag_annotationTick4095297895764883997_efe5e2c78fb5d173 ( Context * __context__, char * const  __name_rename_at_240_23, char * const  __tag_rename_at_240_24, soa::SoaCallMacro * __classPtr_rename_at_240_25 )
{
    smart_ptr_raw<FunctionAnnotation> __ann_rename_at_241_26; memset((void*)&__ann_rename_at_241_26,0,sizeof(__ann_rename_at_241_26));
    /* finally */ auto __finally_240= das_finally([&](){
    das_delete_handle<smart_ptr_raw<FunctionAnnotation>>::clear(__context__,__ann_rename_at_241_26);
    /* end finally */ });
    __ann_rename_at_241_26; das_zero(__ann_rename_at_241_26); das_move(__ann_rename_at_241_26, _FuncastTickmake_function_annotationTick3074191368936885601_f2871754a6b7b4d2(__context__,__name_rename_at_240_23,__classPtr_rename_at_240_25));
    das_invoke_function<void>::invoke<char * const ,smart_ptr_raw<FunctionAnnotation>>(__context__,nullptr,Func(__context__->fnByMangledName(/*@ast_boost::apply_tag_annotation Cs Y<FunctionAnnotationPtr>1<H<ast::FunctionAnnotation>>?M*/ 0x7678364e276db9c2)),__tag_rename_at_240_24,__ann_rename_at_241_26);
    addModuleFunctionAnnotation(thisModule(__context__,((LineInfoArg *)(&LineInfo::g_LineInfoNULL))),__ann_rename_at_241_26,__context__,((LineInfoArg *)(&LineInfo::g_LineInfoNULL)));
}

inline Structure * _FuncbuiltinTickget_ptrTick5807679485210906136_40d47796265c352d ( Context * __context__, smart_ptr_raw<Structure> __src_rename_at_1784_27 )
{
    return das_auto_cast<Structure *>::cast(das_cast<Structure *>::cast(__src_rename_at_1784_27));
}

inline void finalize_4044026fdc19e92c ( Context * __context__, soa::CollectAndReplaceIteratorFields &  ____this_rename_at_211_28 )
{
    _FuncbuiltinTickfinalizeTick5454204887383796109_6756312eac7cb0d5(__context__,das_arg<TTable<char *,bool>>::pass(____this_rename_at_211_28.names));
    memset((void*)&(____this_rename_at_211_28), 0, TypeSize<soa::CollectAndReplaceIteratorFields>::size);
}

inline smart_ptr_raw<VisitorAdapter> _FuncastTickmake_visitorTick897644165917210720_953b84b0d8e9d6c1 ( Context * __context__, soa::CollectAndReplaceIteratorFields const  &  __someClass_rename_at_684_29 )
{
    soa::CollectAndReplaceIteratorFields const  * __classPtr_rename_at_687_30 = ((soa::CollectAndReplaceIteratorFields const  *)das_ref(__context__,__someClass_rename_at_684_29));
    StructInfo const  * __classInfo_rename_at_688_31 = ((StructInfo const  *)_FuncrttiTickclass_infoTick15801393167907430156_209edeb7de5c0a53(__context__,__someClass_rename_at_684_29));
    return /* <- */ das_auto_cast_move<smart_ptr_raw<VisitorAdapter>>::cast(makeVisitor(das_auto_cast<void * const >::cast(__classPtr_rename_at_687_30),__classInfo_rename_at_688_31,__context__));
}

inline Sequence DAS_COMMENT((char *)) _FuncbuiltinTickkeysTick2205854368403803976_b94684321587e3d1 ( Context * __context__, TTable<char *,bool> const  &  __a_rename_at_1180_32 )
{
    Sequence DAS_COMMENT((char *)) __it_rename_at_1181_33;das_zero(__it_rename_at_1181_33);
    builtin_table_keys(das_arg<Sequence DAS_COMMENT((char *))>::pass(__it_rename_at_1181_33),__a_rename_at_1180_32,8,__context__,((LineInfoArg *)(&LineInfo::g_LineInfoNULL)));
    return /* <- */ das_auto_cast_move<Sequence DAS_COMMENT((char *))>::cast(__it_rename_at_1181_33);
}

inline void finalize_82eecfa560c28a37 ( Context * __context__, soa::CollectAndReplaceIteratorFields * & ____this_rename_at_238_34 )
{
    if ( ____this_rename_at_238_34 != nullptr )
    {
        int32_t ____size_rename_at_238_35 = ((int32_t)class_rtti_size(das_auto_cast<void * const >::cast(____this_rename_at_238_34)));
        das_invoke_function<void>::invoke<ast::AstVisitor &>(__context__,nullptr,____this_rename_at_238_34->__finalize,das_arg<ast::AstVisitor>::pass(das_cast<ast::AstVisitor>::cast(das_deref(__context__,____this_rename_at_238_34))));
        das_delete<soa::CollectAndReplaceIteratorFields *>::clear(__context__,____this_rename_at_238_34,____size_rename_at_238_35);
        das_copy(____this_rename_at_238_34,nullptr);
    };
}

inline void _FuncDot_cc13ea1f4c23c3ba ( Context * __context__, soa::SOA_INDEX const  &  __src_rename_at_18_36, char * const  __field_rename_at_18_37 )
{
    DAS_ASSERTF((false),(((char *) "this code should never been instanced. soa_call macro replaces the soa[index].field with soa.field[index]")));
}

inline soa::CollectAndReplaceIteratorFields CollectAndReplaceIteratorFields_14541ac635b00423 ( Context * __context__, char * const  __prefix_rename_at_214_38 )
{
    soa::CollectAndReplaceIteratorFields __self_rename_at_214_39; das_zero(__self_rename_at_214_39); das_move(__self_rename_at_214_39, (([&]() -> soa::CollectAndReplaceIteratorFields {
        soa::CollectAndReplaceIteratorFields __mks_214;
        das_zero(__mks_214);
        das_copy((__mks_214.__rtti),(((void *)(&__type_info__c08112e43ab7daf4))));
        das_copy((__mks_214.__finalize),(das_cast<Func DAS_COMMENT((void,ast::AstVisitor))>::cast(Func(__context__->fnByMangledName(/*@soa::CollectAndReplaceIteratorFields'__finalize S<soa::CollectAndReplaceIteratorFields>*/ 0xf63adf6b7c48d638)))));
        das_copy((__mks_214.visitExprField),(das_cast<Func DAS_COMMENT((smart_ptr_raw<Expression>,ast::AstVisitor,smart_ptr_raw<ExprField> const ))>::cast(Func(__context__->fnByMangledName(/*@soa::CollectAndReplaceIteratorFields`visitExprField S<soa::CollectAndReplaceIteratorFields> 1<H<ast::ExprField>>?M*/ 0x57c2c88ce5199bb7)))));
        return __mks_214;
    })()));
    _FuncCollectAndReplaceIteratorFieldsTickCollectAndReplaceIteratorFields_317ad332800526ce(__context__,das_arg<soa::CollectAndReplaceIteratorFields>::pass(__self_rename_at_214_39),__prefix_rename_at_214_38);
    return /* <- */ das_auto_cast_move<soa::CollectAndReplaceIteratorFields>::cast(__self_rename_at_214_39);
}

inline void _FuncCollectAndReplaceIteratorFieldsTickCollectAndReplaceIteratorFields_317ad332800526ce ( Context * __context__, soa::CollectAndReplaceIteratorFields &  __self_rename_at_214_40, char * const  __prefix_rename_at_214_41 )
{
    das_copy(__self_rename_at_214_40.it_prefix,__prefix_rename_at_214_41);
}

inline smart_ptr_raw<Expression> _FuncCollectAndReplaceIteratorFieldsTickvisitExprField_33e4881022e47194 ( Context * __context__, soa::CollectAndReplaceIteratorFields &  __self_rename_at_217_42, smart_ptr_raw<ExprField> __expr_rename_at_217_43 ) { das_stack_prologue __prologue(__context__,128,"CollectAndReplaceIteratorFields`visitExprField " DAS_FILE_LINE);
{
    if ( SimPolicy<char *>::Equ(cast<char *>::from(__expr_rename_at_217_43->value /*value*/->__rtti /*__rtti*/),cast<char *>::from(((char *) "ExprVar")),*__context__,nullptr) )
    {
        if ( eq_dstr_str(das_arg<das::string>::pass((((nequ_sptr_ptr(das_auto_cast<smart_ptr_raw<void> const >::cast(__expr_rename_at_217_43->value /*value*/),das_auto_cast<void * const >::cast(nullptr))) && (SimPolicy<char *>::Equ(cast<char *>::from(__expr_rename_at_217_43->value /*value*/->__rtti /*__rtti*/),cast<char *>::from(((char *) "ExprVar")),*__context__,nullptr))) ? das_auto_cast<ExprVar *>::cast(das_cast<ExprVar *>::cast(__expr_rename_at_217_43->value /*value*/)) : das_auto_cast<ExprVar *>::cast(das_invoke_function<void *>::invoke(__context__,nullptr,Func(__context__->fnByMangledName(/*@ast_boost::panic_expr_as*/ 0x299199196cf0e19)))))->name /*name*/),__self_rename_at_217_42.it_prefix) )
        {
            char * __ename_rename_at_220_44 = ((char *)(char *)(((char * const )(to_das_string(das_arg<das::string>::pass(__expr_rename_at_217_43->name /*name*/),__context__,((LineInfoArg *)(&LineInfo::g_LineInfoNULL)))))));
            _FuncbuiltinTickinsertTick12964066441666329206_ed82fde366293a19(__context__,das_arg<TTable<char *,bool>>::pass(__self_rename_at_217_42.names),__ename_rename_at_220_44,true);
            return /* <- */ das_auto_cast_move<smart_ptr_raw<Expression>>::cast(das_ascend_handle<true,smart_ptr_raw<ExprVar>>::make(__context__,nullptr,(([&](ExprVar & __mks_222) {
                das_copy((__mks_222.at /*at*/),(__expr_rename_at_217_43->at /*at*/));
                {
                    set_das_string(das_arg<das::string>::pass(__mks_222.name /*name*/),cast<char *>::to(SimPolicy<char *>::Add(cast<char *>::from((cast<char *>::to(SimPolicy<char *>::Add(cast<char *>::from(__self_rename_at_217_42.it_prefix),cast<char *>::from(((char *) "`")),*__context__,nullptr)))),cast<char *>::from(__ename_rename_at_220_44),*__context__,nullptr)));
                }            }))));
        };
    };
    return /* <- */ das_auto_cast_move<smart_ptr_raw<Expression>>::cast(__expr_rename_at_217_43);
}}

inline void _FuncCollectAndReplaceIteratorFields_0x27___finalize_b566b2c74b2cefea ( Context * __context__, soa::CollectAndReplaceIteratorFields &  __self_rename_at_211_46 )
{
    finalize_4044026fdc19e92c(__context__,das_arg<soa::CollectAndReplaceIteratorFields>::pass(__self_rename_at_211_46));
}

inline TArray<char *> collect_and_replace_iterator_fields_8217e213d7d903f1 ( Context * __context__, char * const  __prefix_rename_at_229_47, smart_ptr_raw<Expression> const  __blk_rename_at_229_48 )
{
    TArray<char *> __names_rename_at_230_49; memset((void*)&__names_rename_at_230_49,0,sizeof(__names_rename_at_230_49));
    soa::CollectAndReplaceIteratorFields * __astVisitor_rename_at_231_50; memset((void*)&__astVisitor_rename_at_231_50,0,sizeof(__astVisitor_rename_at_231_50));
    smart_ptr_raw<VisitorAdapter> __astVisitorAdapter_rename_at_232_51; memset((void*)&__astVisitorAdapter_rename_at_232_51,0,sizeof(__astVisitorAdapter_rename_at_232_51));
    Sequence DAS_COMMENT((char *)) _temp_make_local_234_14_0; _temp_make_local_234_14_0;
    /* finally */ auto __finally_229= das_finally([&](){
    das_delete_handle<smart_ptr_raw<VisitorAdapter>>::clear(__context__,__astVisitorAdapter_rename_at_232_51);
    /* end finally */ });
    das_zero(__names_rename_at_230_49);
    __astVisitor_rename_at_231_50 = das_new<soa::CollectAndReplaceIteratorFields>::make_and_init(__context__,[&]() { return CollectAndReplaceIteratorFields_14541ac635b00423(__context__,__prefix_rename_at_229_47); });
    __astVisitorAdapter_rename_at_232_51; das_zero(__astVisitorAdapter_rename_at_232_51); das_move(__astVisitorAdapter_rename_at_232_51, _FuncastTickmake_visitorTick897644165917210720_953b84b0d8e9d6c1(__context__,das_arg<soa::CollectAndReplaceIteratorFields>::pass(das_deref(__context__,__astVisitor_rename_at_231_50))));
    astVisitExpression(__blk_rename_at_229_48,__astVisitorAdapter_rename_at_232_51,__context__,((LineInfoArg *)(&LineInfo::g_LineInfoNULL)));
    {
        bool __need_loop_234 = true;
        // n: string
        das_iterator<Sequence DAS_COMMENT((char *))> __n_iterator((_temp_make_local_234_14_0 = (_FuncbuiltinTickkeysTick2205854368403803976_b94684321587e3d1(__context__,das_arg<TTable<char *,bool>>::pass(__astVisitor_rename_at_231_50->names)))));
        char * __n_rename_at_234_52;
        __need_loop_234 = __n_iterator.first(__context__,(__n_rename_at_234_52)) && __need_loop_234;
        for ( ; __need_loop_234 ; __need_loop_234 = __n_iterator.next(__context__,(__n_rename_at_234_52)) )
        {
            _FuncbuiltinTickpushTick10769833213962245646_2e2035451aa39fbe(__context__,das_arg<TArray<char *>>::pass(__names_rename_at_230_49),__n_rename_at_234_52);
        }
        __n_iterator.close(__context__,(__n_rename_at_234_52));
    };
    finalize_82eecfa560c28a37(__context__,__astVisitor_rename_at_231_50);
    return /* <- */ das_auto_cast_move<TArray<char *>>::cast(_FuncbuiltinTick_return_with_lockcheckTick2939372000839727345_f20df1c1eaee53(__context__,das_arg<TArray<char *>>::pass(__names_rename_at_230_49)));
}

static void registerAotFunctions ( AotLibrary & aotLib ) {
    aotLib[0xf0b0e02d6dfe87be] = +[](Context & ctx) -> SimNode* {
        return ctx.code->makeNode<AutoSimNode_Aot<&_FuncbuiltinTickpushTick10769833213962245646_bf13ac978ab9bde1>>();
    };
    aotLib[0xd8eee849a9a4a990] = +[](Context & ctx) -> SimNode* {
        return ctx.code->makeNode<AutoSimNode_Aot<&_FuncrttiTickclass_infoTick15801393167907430156_3cdf90f0050f0bd0>>();
    };
    aotLib[0x77501ab7b3fbf019] = +[](Context & ctx) -> SimNode* {
        return ctx.code->makeNode<AutoSimNode_Aot<&_FuncbuiltinTickpushTick10769833213962245646_98769edad04f7586>>();
    };
    aotLib[0x1f214e38d55c2e49] = +[](Context & ctx) -> SimNode* {
        return ctx.code->makeNode<AutoSimNode_Aot<&_FuncrttiTickclass_infoTick15801393167907430156_d0e87fb9376a5c12>>();
    };
    aotLib[0xb55bd10dc34837b8] = +[](Context & ctx) -> SimNode* {
        return ctx.code->makeNode<AutoSimNode_Aot<&_FuncbuiltinTickpushTick10769833213962245646_62a2cc7fcca24a80>>();
    };
    aotLib[0xe28f315534671b1c] = +[](Context & ctx) -> SimNode* {
        return ctx.code->makeNode<AutoSimNode_Aot<&_FuncrttiTickclass_infoTick15801393167907430156_d8e68604e6d0a34f>>();
    };
    aotLib[0xd7643c25f4628cc0] = +[](Context & ctx) -> SimNode* {
        return ctx.code->makeNode<AutoSimNode_Aot<&_FuncrttiTickclass_infoTick15801393167907430156_209edeb7de5c0a53>>();
    };
    aotLib[0xc39ed041de0b0ec4] = +[](Context & ctx) -> SimNode* {
        return ctx.code->makeNode<AutoSimNode_Aot<&_FuncbuiltinTickfinalizeTick5454204887383796109_6756312eac7cb0d5>>();
    };
    aotLib[0x941af5a7e675bd8c] = +[](Context & ctx) -> SimNode* {
        return ctx.code->makeNode<AutoSimNode_Aot<&_FuncastTickmake_function_annotationTick3074191368936885601_f2871754a6b7b4d2>>();
    };
    aotLib[0x6ca11fcf3480d733] = +[](Context & ctx) -> SimNode* {
        return ctx.code->makeNode<AutoSimNode_Aot<&_FuncbuiltinTickinsertTick12964066441666329206_ed82fde366293a19>>();
    };
    aotLib[0x3f247c26fa41d6cb] = +[](Context & ctx) -> SimNode* {
        return ctx.code->makeNode<AutoSimNode_Aot<&_FuncbuiltinTickpushTick10769833213962245646_2e2035451aa39fbe>>();
    };
    aotLib[0xd40c6b362229276d] = +[](Context & ctx) -> SimNode* {
        return ctx.code->makeNode<AutoSimNode_Aot<&_FuncbuiltinTick_return_with_lockcheckTick2939372000839727345_f20df1c1eaee53>>();
    };
    aotLib[0x6adfb962b5ff5d1a] = +[](Context & ctx) -> SimNode* {
        return ctx.code->makeNode<AutoSimNode_Aot<&_FuncbuiltinTickpushTick14133213201864676143_11cab7c02908b7e7>>();
    };
    aotLib[0x112693ef40994069] = +[](Context & ctx) -> SimNode* {
        return ctx.code->makeNode<AutoSimNode_Aot<&_FuncastTickdescribeTick842554968825501494_7ce40fe8f75fc0c>>();
    };
    aotLib[0xd121ca9349d067f0] = +[](Context & ctx) -> SimNode* {
        return ctx.code->makeNode<AutoSimNode_Aot<&_Funcast_boostTicksetup_tag_annotationTick4095297895764883997_efe5e2c78fb5d173>>();
    };
    aotLib[0xe36cc2fbacdb5b57] = +[](Context & ctx) -> SimNode* {
        return ctx.code->makeNode<AutoSimNode_Aot<&_FuncbuiltinTickget_ptrTick5807679485210906136_40d47796265c352d>>();
    };
    aotLib[0x1fb2d2382ef6400b] = +[](Context & ctx) -> SimNode* {
        return ctx.code->makeNode<AutoSimNode_Aot<&finalize_4044026fdc19e92c>>();
    };
    aotLib[0x6eb28e5b9bd7f62b] = +[](Context & ctx) -> SimNode* {
        return ctx.code->makeNode<AutoSimNode_Aot<&_FuncastTickmake_visitorTick897644165917210720_953b84b0d8e9d6c1>>();
    };
    aotLib[0x1675089fdb3307aa] = +[](Context & ctx) -> SimNode* {
        return ctx.code->makeNode<AutoSimNode_AotCMRES<&_FuncbuiltinTickkeysTick2205854368403803976_b94684321587e3d1>>();
    };
    aotLib[0x3064b4e5bab6a3f4] = +[](Context & ctx) -> SimNode* {
        return ctx.code->makeNode<AutoSimNode_Aot<&finalize_82eecfa560c28a37>>();
    };
    aotLib[0x441b28b8d861502f] = +[](Context & ctx) -> SimNode* {
        return ctx.code->makeNode<AutoSimNode_Aot<&_FuncDot_cc13ea1f4c23c3ba>>();
    };
    aotLib[0xf3992cc233d38215] = +[](Context & ctx) -> SimNode* {
        return ctx.code->makeNode<AutoSimNode_AotCMRES<&CollectAndReplaceIteratorFields_14541ac635b00423>>();
    };
    aotLib[0x8c13e60b604e9271] = +[](Context & ctx) -> SimNode* {
        return ctx.code->makeNode<AutoSimNode_Aot<&_FuncCollectAndReplaceIteratorFieldsTickCollectAndReplaceIteratorFields_317ad332800526ce>>();
    };
    aotLib[0x91ca67390f62c973] = +[](Context & ctx) -> SimNode* {
        return ctx.code->makeNode<AutoSimNode_Aot<&_FuncCollectAndReplaceIteratorFieldsTickvisitExprField_33e4881022e47194>>();
    };
    aotLib[0x3def2b2bc4f972a1] = +[](Context & ctx) -> SimNode* {
        return ctx.code->makeNode<AutoSimNode_Aot<&_FuncCollectAndReplaceIteratorFields_0x27___finalize_b566b2c74b2cefea>>();
    };
    aotLib[0x992b2cfb31a8f2fb] = +[](Context & ctx) -> SimNode* {
        return ctx.code->makeNode<AutoSimNode_AotCMRES<&collect_and_replace_iterator_fields_8217e213d7d903f1>>();
    };
    // [[ init script ]]
    aotLib[0x5464bbe131808aa5] = +[](Context & ctx) -> SimNode* {
        ctx.aotInitScript = ctx.code->makeNode<AutoSimNode_Aot<&__init_script>>();
        return ctx.aotInitScript;
    };
    resolveTypeInfoAnnotations();
}

} // namespace _anon_2012222979515622300
AotListBase impl_aot_soa(_anon_2012222979515622300::registerAotFunctions);
} // namespace das

#if defined(_MSC_VER)
#pragma warning(pop)
#endif
#if defined(__EDG__)
#pragma diag_default 826
#elif defined(__GNUC__) && !defined(__clang__)
#pragma GCC diagnostic pop
#endif
#if defined(__clang__)
#pragma clang diagnostic pop
#endif
